gpt4 book ai didi

c# ValueInjecter : Mapping the whole object Graph 收藏

转载 作者:行者123 更新时间:2023-11-30 15:38:39 25 4
gpt4 key购买 nike

我刚开始为我的实体映射(DTO <-> 实体)使用 ValueInjecter。这是我的 DTO:

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; }
}

现在,我需要从 Repository 查询 IncidentDTO。存储库查询 Incident & AgencyIncidentType 表来自数据库和 map Incident -> IncidentDTO 使用 ValueInjecter 并返回 IncidentDTO

使用 ValueInjecter 进行上述映射的最佳方法是什么?

谢谢,普拉特克

最佳答案

如果要将 Incident 映射到 IncidentDTO,同时在 agency 属性中保留和映射 Agency 对象Incident 实例的(到 AgencyDTO)我建议将 agencyDTO 属性重命名为 agency IncidentDTO,然后对 Value Injector 文档中的 CloneInjection 示例进行调整,如下所述:omu.valueinjecter deep clone unlike types

关于c# ValueInjecter : Mapping the whole object Graph 收藏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11184596/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com