Требуется предложение AutoMapper
У меня ниже классы
class Contact
{
string FirstName;
string LastName;
List<Phone> ContactNumbers;
}
class Phone
{
string Number;
PhoneType Type;
}
enum PhoneType
{
Home, Work, Fax
}
class Source
{
Contact Agent;
Contact Customer;
}
class Destination
{
string AgentFirstName;
string AgentLastName;
string AgentPhoneNumber1;
string AgentPhoneNumber2;
string AgentPhoneNumber3;
PhoneType AgentPhoneType1;
PhoneType AgentPhoneType2;
PhoneType AgentPhoneType3;
string CustomerFirstName;
string CustomerLastName;
string CustomerPhoneNumber1;
string CustomerPhoneNumber2;
string CustomerPhoneNumber3;
PhoneType CustomerPhoneType1;
PhoneType CustomerPhoneType2;
PhoneType CustomerPhoneType3;
}
Я хочу сделать авто-карту из источника в класс назначения. Задача, которую я вижу, - преобразовать список контактных номеров в независимые поля в классе назначения. Может кто-нибудь, пожалуйста, предложить пути? Заранее спасибо.
1 ответ
Решение
Вероятно, проще всего сделать пользовательскую функцию отображения, которая делает вещи простыми и удобочитаемыми:
CreateMap<Contact, Destination>().ConvertUsing(c => MapContactToDestination(c));
Destination MapContactToDestination(Contact c)
{
//logic here for handling conversion
}