#c# #.net #asp.net-core #automapper #mapper
Вопрос:
сначала открытый класс {
public List<ClassA> AList{ get; set; }
}
открытый класс ClassA {
public string FirstName{ get; set; }
public string LastName{ get; set; }
}
открытый класс Второй {
public List<ClassB> BList{ get; set; }
}
открытый класс ClassB {
public ClassC Cobj { get; set; }
public string Email { get; set; }
}
открытый класс ClassC {
public string FirstName{ get; set; }
public string LastName{ get; set; }
}
невозможно получить результаты для преобразования ClassA в ClassC при попытке сопоставления первого и второго
Ответ №1:
Я думаю, что обратное сопоставление и выравнивание могли бы помочь
var config = new MapperConfiguration(cfg =>
{
cfg.CreateMap<First, Second>()
.ForMember(dest => dest.BList, opt => opt.MapFrom(src => src.AList));
cfg.CreateMap<ClassB, ClassA>()
.ForMember(dest => dest.FirstName, opt => opt.MapFrom(src => src.Cobj.FirstName))
.ForMember(dest => dest.LastName, opt => opt.MapFrom(src => src.Cobj.LastName))
.ReverseMap();
});