【发布时间】:2017-08-19 17:50:37
【问题描述】:
我正在编写 DbSets 的模拟并最终编写了一系列这样的代码。
int rowCount = 0;
var maxOrderId = EntityContainer.Set<Order>().Max(a => a.Id);
var newOrders = EntityContainer.Set<Order>().Where(a =>a.Id == 0);
foreach (var order in newOrders)
{
order.Id = ++maxOrderId;
rowCount++;
}
var maxServiceId = EntityContainer.Set<Service>().Max(a => a.Id);
var newServices = EntityContainer.Set<Service>().Where(a => a.Id == 0);
foreach (var service in newServices)
{
service.Id = ++maxServiceId;
rowCount++;
}
此列表中有更多实体。有没有办法可以将这些提取到通用方法? 比如:
int GenerateID<Order>();
我尝试使用 dynamic,但编译器抱怨 lambda 表达式中不允许动态。
【问题讨论】:
-
可能与您的情况无关,但您在推出自己的实施之前检查过github.com/tamasflamich/effort 吗?