使用 EF4 我试图想出一种更智能的方法来将数据从实体聚合到业务对象,即连接 linq 以将数据直接传送到我的 BE,从而节省了随后在 linq 之后从 IEnumerable 复制的步骤。我一直在尝试使用以下内容,但似乎无法正确使用语法。 CustomerBE 是一个普通的 POCO。
var customers = uow
.GetAllCustomers()
.Aggregate((list,obj) => new List<CustomerBE>()
{
var beo = new CustomerBE { FirstName = obj.Firstname,
Id = obj.Id
...
};
list.Add(beo);
return list;
});
最佳答案
为什么不直接在 Select
语句中执行此操作? Select
用于从一种类型映射到另一种类型:
var customers = uow
.GetAllCustomers()
.AsEnumerable()
.Select(c => new CustomerBE { FirstName = c.Firstname,
Id = c.Id
// ...
}
)
.ToList();
关于c# - 使用聚合连接 linq 将结果放入 POCO,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11888311/