C# 自动映射,从泛型列表继承 公共舱航班{ 公共舱室集合舱室{get;set;} } 公共类CABIN集合:列表 { 公共空间{set;get;} }
源类和目标类具有相同的成员C# 自动映射,从泛型列表继承 公共舱航班{ 公共舱室集合舱室{get;set;} } 公共类CABIN集合:列表 { 公共空间{set;get;} },c#,automapper,C#,Automapper,源类和目标类具有相同的成员 public class Flight { public CabinCollection Cabins { get; set; } } public class CabinCollection : List<Cabin> { public Cabin Lowest { set; get; } } 1)映射器。初始化(cfg=>{ CreateMap(); CreateMap();
public class Flight {
public CabinCollection Cabins { get; set; }
}
public class CabinCollection : List<Cabin>
{
public Cabin Lowest { set; get; }
}
1)映射器。初始化(cfg=>{
CreateMap();
CreateMap();
});
List res=Mapper.Map(航班);
它可以工作,但成员“lower”为空
1) Mapper.Initialize(cfg => {
cfg.CreateMap<Domain.Flight, Contract.Flight>();
cfg.CreateMap<Domain.Cabin, Contract.Cabin>();
});
List<Flight> res = Mapper.Map<List<Flight>>(flights);
2)映射器。初始化(cfg=>{
CreateMap();
CreateMap();
cfg.CreateMap
.IncludeBase()
});
它可以工作,并且映射了成员“lower”,但列表为空
有什么方法可以使它正确吗?将其添加到您的配置中
2) Mapper.Initialize(cfg => {
cfg.CreateMap<Domain.Flight, Contract.Flight>();
cfg.CreateMap<Domain.Cabin, Contract.Cabin>();
cfg.CreateMap<Domain.CabinCollection,Contract.CabinColection>
.IncludeBase<List<Domain.Cabin>, List<Contract.Cabin>>()
});
cfg.CreateMap();
基本上,Automapper不知道如何映射CabinCollection
对象
将此添加到您的配置中
2) Mapper.Initialize(cfg => {
cfg.CreateMap<Domain.Flight, Contract.Flight>();
cfg.CreateMap<Domain.Cabin, Contract.Cabin>();
cfg.CreateMap<Domain.CabinCollection,Contract.CabinColection>
.IncludeBase<List<Domain.Cabin>, List<Contract.Cabin>>()
});
cfg.CreateMap();
基本上,Automapper不知道如何映射CabinCollection
对象
此代码在没有任何附加配置的情况下应该可以工作。它确实可以工作,但没有返回预期的值result@ShawnQian我面临着同样的问题,你有什么想法来解决这个问题吗?谢谢。这段代码不需要任何额外的配置就可以工作。它确实可以工作,但没有返回预期的结果result@ShawnQian我面临着同样的问题,你有什么想法来解决这个问题吗?谢谢。这仍然不会映射
CabinCollection
的元素,只映射最低层的CabinCollection。目的地列表将为空。这仍然不会映射CabinCollection
的元素,仅映射最低舱。目标列表将为空。