2011-03-21 122 views
0

有没有什么方法可以使用Mapper.CreateMap()从两个表映射数据? 例如: - 我有两个表文档和documentdetails.i想要从两个表中获取数据并将它们映射到一个模型,这是documentmodel.how我可以在.net中使用上述方法执行此操作吗? thanx :)映射来自多个表的数据

+0

如何在这些表加载到.NET - NHibernate的?实体框架? ADO.NET数据集?了解表格在内存中的位置将有助于回答问题。 – PatrickSteele 2011-03-21 12:49:54

+0

实体框架。 – 2011-03-22 03:03:12

+0

所以我假设你有一个包含DocumentDetails参考的Document类?如果是这样,那么你真的只有一个类来映射,因为DocumentDetails具有对细节的引用。 – PatrickSteele 2011-03-22 11:40:09

回答

0

也许你可以在Automapper的ResolveUsing()中使用解析器。 e.g:

Mapper.CreateMap() 
    .ForMember(x=>x.DocumentDetails, opt=>opt.ResolveUsing<DocumentDetailsResolver>() 
     .FromMember(src=>src.Document.DocumentId); 

然后在您的DocumentDetailsResolver类:

public class DocumentDetailsResolver: ValueResolver<int, List<DocumentDetails>{ 
     protected override List<DocumentDetails> ResolveCore(int source) 
     { 
      // Put your logic to get the list of document details, source is the ID of the document 
     // Return the list 
     } 
    }