可以简化映射到类的linq查询的映射吗?

时间:2013-06-17 21:07:53

标签: linq entity-framework

我有一个名为Customer的类,它有几个属性,即FirstName,LastName,City,State

Customer类有一些数据注释来修复命名和其他事情。 (这个类被用作MVC的模型)

我对具有相同字段的EF5实体进行了Linq查询。有没有一种简单的方法可以将查询结果映射到除以下类之外的类:

customer.FirstName = item.FirstName;
customer.LastName = item.LastName; 
customer.City = item.City; 
etc.....

我遇到了对automapper(和其他人)的引用,但是想知道基于结果和类的相同性质还有其他选项吗?

1 个答案:

答案 0 :(得分:1)

如果您当时正在创建对象,则使用对象初始化器可能是最干净的编码解决方案。

var model = new myMvcModel()
{
    FirstName = input.FirstName,
    LastName = input.LastName,
    City = input.City
}

否则使用反射或AutoMapper作为Ek0nomik建议是我唯一可以建议的解决方案。

与Ek0nomik一样,我更喜欢手动而不是AutoMapper。甚至创建了一个VS宏来检查两个对象并输出一些脚手架。