我刚开始对我的Entity Mappings使用ValueInjecter(DTO < - > Entity)。 继承人我DTO:c#ValueInjecter:映射整个对象图
public class IncidentDTO
{
int ID { get; set; }
string Name { get; set; }
AgencyDTO agencyDTO { get; set; }
}
public class AgencyDTO
{
int ID { get; set; }
string Name { get; set; }
List<IncidentTypeDTO> incidentTypeDTOList { get; set; }
}
public class IncidentTypeDTO
{
int ID { get; set; }
string TypeName { get; set; }
}
我的继承人NHibernate的代理类:
public class Incident
{
int ID { get; set; }
string Name { get; set; }
Agency agency { get; set; }
}
public class Agency
{
int ID { get; set; }
string Name { get; set; }
}
public class IncidentType
{
int ID { get; set; }
string TypeName { get; set; }
}
public class AgencyIncidentType
{
int ID { get; set; }
Agency agency { get; set; }
IncidentType incidentType { get; set; }
}
现在,我需要从信息库查询IncidentDTO
。 存储库查询Incident
& AgencyIncidentType
来自数据库和地图的表格Incident
→使用ValueInjecter并返回IncidentDTO
。
使用ValueInjecter进行上述映射的最佳方法是什么?
感谢, Prateek
看看http://prodinner.codeplex.com,它使用valueinjecter对于你正在做的完全相同的事情,它也有一个pdf解释, – Omu
谢谢查克!多数民众赞成我正在寻找,'ConventionInjection'为'IEnumerable'类型....也@谷歌的答案指出我深层克隆+'ConventionInjection为IEnumerable'所以我把它标记为答案..谢谢你们的帮助!和Chuck使对象映射变得容易得多..;) –