我如何将我的Linq-to-Sql生成实体(DTO)映射到我的域实体?问题是我无法映射关联,因为它们的类型不同。 DTO使用EntitySet和EntityRef,我的域实体使用IList和T.
我看了一些博文:Ian Cooper的架构-linq-to-sql-applications-part-5 和digital_ruminations linq-to-sql-poco-support 他们不符合我的需要。我喜欢某种通用转换器类来处理映射。
现在我做这样的事情:
public IList<Entities.Customer> GetAll()
{
try
{
return _custConverter.Convert(base.GetEntities());
}
但Convert方法只转换基本属性而不转换关联。 我有什么想法可以做到最好吗?
答案 0 :(得分:2)
您可能需要查看AutoMapper。它可以自动开箱即用地映射属性,并支持广泛的自定义,例如自定义转换器,我认为可以用来从您的EntitySet中制作列表。
更新