更新IQueryable对象中的值

时间:2012-11-15 09:44:43

标签: c# .net linq linq-to-sql

我有一个IQueryable对象,我想手动更新一些值,但是在执行循环后没有反映出更改:

 IQueryable<myModel> items;
 items = GetItems();   

 foreach (myModel row in items)
 {
        row.field10 = "new value";
 }

 objDataContext.SubmitChanges();

我做错了什么?

1 个答案:

答案 0 :(得分:2)

GetItems()方法是否使用完全相同的objDataContext实例来从数据库中获取项目?它必须使用相同的ObjectContext来跟踪更改。另一种选择是使用ToList()方法:

List<myModel> items = GetItems().ToList();