Automapper如何将一个对象的属性分配给两个相同类型的对象的属性
Automapper How to devide properties from one object to properties of two objects same type
我有一个对象 AllDriversDetails,其中包含两个驱动程序的数据:第一个和第二个。
public class AllDriversDetails
{
public string FirstDriverId { get; set; }
public string FirstDriverName { get; set; }
public string SecondDriverId { get; set; }
public string SecondDriverName { get; set; }
}
我必须将 AllDriversDetails 转换为具有两个相同类型属性的 ComplexDriversDetails
public class ComplexDriversDetails
{
public DriverDetails FirstDriver { get; set; }
public DriverDetails SecondDriver { get; set; }
}
public class DriverDetails
{
public string Id { get; set; }
public string Name { get; set; }
}
是否可以使用自动映射器?
我的应该没问题。尝试这样的事情
Mapper.CreateMap<AllDriversDetails, ComplexDriversDetails>()
.ForMember(m => m.FirstDriver, opt => opt.MapFrom(src => new DriverDetails {Id = src.FirstDriverId, Name = FirstDriverName }))
.ForMember(m => m.SecondDriver , opt => opt.MapFrom(src => new DriverDetails {Id = src.SecondDriverId, Name = SecondDriverName }))
您可以在此处找到更多信息:http://cpratt.co/using-automapper-creating-mappings/
我有一个对象 AllDriversDetails,其中包含两个驱动程序的数据:第一个和第二个。
public class AllDriversDetails
{
public string FirstDriverId { get; set; }
public string FirstDriverName { get; set; }
public string SecondDriverId { get; set; }
public string SecondDriverName { get; set; }
}
我必须将 AllDriversDetails 转换为具有两个相同类型属性的 ComplexDriversDetails
public class ComplexDriversDetails
{
public DriverDetails FirstDriver { get; set; }
public DriverDetails SecondDriver { get; set; }
}
public class DriverDetails
{
public string Id { get; set; }
public string Name { get; set; }
}
是否可以使用自动映射器?
我的应该没问题。尝试这样的事情
Mapper.CreateMap<AllDriversDetails, ComplexDriversDetails>()
.ForMember(m => m.FirstDriver, opt => opt.MapFrom(src => new DriverDetails {Id = src.FirstDriverId, Name = FirstDriverName }))
.ForMember(m => m.SecondDriver , opt => opt.MapFrom(src => new DriverDetails {Id = src.SecondDriverId, Name = SecondDriverName }))
您可以在此处找到更多信息:http://cpratt.co/using-automapper-creating-mappings/