我正在开发一个新项目,并希望使用MVC和实体框架。出于分离关注的目的。我计划像这样构建我的项目..
我的问题是在BLL中将实体对象转换为业务对象的最佳方法是什么?我的映射要求我连接两个表并计算一个映射到业务对象中的字段的总和。
不确定这是一个很好的例子但是我想加入客户表和订单表并为同一客户获得两条记录。一个是放置在AM中的订单,另一个是放置在PM中的订单。我需要计算当天的总数并将其映射到业务对象中的字段。
自动识别而不是手动编写DTO代码,但我不确定它是否可以进行复杂的映射(使用总和计算)?
有没有办法在EF 6中手动配置自定义地图来执行此操作?
答案 0 :(得分:0)
使用Automapper,您可以将Projections用于复杂映射或使用AutoMapper的QueryableExtensions帮助方法。
请参阅以下链接中的“聚合”部分。
LINQ可以支持聚合查询,AutoMapper支持LINQ 扩展方法
https://github.com/AutoMapper/AutoMapper/wiki/Queryable-Extensions