1
var IDsToUpdate = db.Orders.Where(x => listOfIDs.Contains(x.ID));

db.Orders.Update(IDsToUpdate , x => new Order{ OrderState = "TEST STATE" });

这会产生运行时错误:

查询必须是 ObjectQuery 或 DbQuery 类型。\r\n参数名称: source

我正在使用 EF 6.0 和 EF Extended 6.0 和 .NET 4

我需要进行批量/批量更新,否则性能是不可接受的。

listOfIDs是类型List<string>

4

1 回答 1

0

您在查询本身上运行更新。

db.Orders
.Where(x => listOfIDs.Contains(x.ID))
.Update(x => new Order{ OrderState = "TEST STATE" });
于 2017-07-02T12:37:07.847 回答