LINQ到SQL不保存到数据库
问题描述:
我有一个非常简单的表,我可以愉快地使用LINQ To SQL查询它,但是当我做任何保存/更新时,我的datacontext上的GetChangeSet方法总是空的。LINQ到SQL不保存到数据库
我的代码是非常简单的(来自不同类级联码):
public static EntitiesDataContext EntitiesContext
{
get { return new EntitiesDataContext("Data Source=ANTSLAPTOP\\sqlexpress;Initial Catalog=nmncouk_d000;Integrated Security=True"); }
}
public static void Save(Price price)
{
EntitiesContext.Prices.InsertOnSubmit(price);
EntitiesContext.SubmitChanges();
}
[Test]
public void SavePrice()
{
Price price = new Price();
price.Lower = 1;
price.Upper = 2;
price.PricePerDay = 10;
Price.Save(price);
Assert.AreNotEqual(price.PriceId, 0);
}
答
问题是与你的EntitiesDataContext方法。虽然它是静态的,但它在每次调用时都会返回一个新的DataContext。因此,您正在调用insertonsubmit并针对不同的上下文提交更改。
调整您的保存方法以使用相同的上下文,一切都应该很好。
谢谢是的,我只是自己工作! – 2008-11-22 16:46:13