【发布时间】:2011-06-12 00:43:18
【问题描述】:
在下面的代码中,我使用 TryUpdateModel 按 Id 更新 IndexOrder。以下更新命中 DB 2 次。通过 Id 检索当前记录而不是更新单行。
我正在使用 LINQ To EF
foreach (var i in indexArraay)
{
SubMenu existingMenu = _menu.SubSingle(Int32.Parse(i.id.ToString()));
existingMenu.IndexOrder = string.IsNullOrEmpty(i.index.ToString()) ? 0 : Int32.Parse(i.index.ToString());
TryUpdateModel(existingMenu);
_menu.Add();
}
在 SQL 中,我们不会像下面的语句那样做。
UPDATE table_name
SET column1=value, column2=value2,...
WHERE some_column=some_value
我是不是在某个地方错了,或者有没有更好的方法来编写 LINQ 更新表达式?
我在这里不是在谈论性能。
【问题讨论】:
标签: c# .net linq linq-to-sql linq-to-entities