#c# #automapper
#c# #automapper
Вопрос:
У меня есть класс A и класс B:
class A
{
public List<TypeEnum> Types { get; set; }
...
}
class B
{
public List<string> TypesString { get; set; }
...
}
Я пытаюсь сопоставить список со списком:
CreateMap<ClassA, ClassB>() .ForMemebr(назначение => назначение.TypesString, m => m.ConvertUsing(источник => (байт) источник.Типы).toString()))
Результат: желаемым результатом должно быть успешное сопоставление списка перечислений со списком строк, например: List<string> => ["1","2","3","5"]
Как я могу это сделать?
Ответ №1:
Попробуйте следующую конфигурацию сопоставления:
CreateMap<ClassA, CLassB>().ForMember(destination => destination.TypesString,
opt => opt.MapFrom(s => s.Types.Select(x => ((byte)x))));
Комментарии:
1. Вы можете удалить оба
ToString
иToList
. AM сделает это за вас.