我有一个IQueryable对象,我想手动更新一些值,但是在执行循环后没有反映出更改:
IQueryable<myModel> items;
items = GetItems();
foreach (myModel row in items)
{
row.field10 = "new value";
}
objDataContext.SubmitChanges();
我做错了什么?
答案 0 :(得分:2)
GetItems()
方法是否使用完全相同的objDataContext
实例来从数据库中获取项目?它必须使用相同的ObjectContext
来跟踪更改。另一种选择是使用ToList()
方法:
List<myModel> items = GetItems().ToList();