AutoMapper — использовать сопоставление в профилеC#

Место общения программистов C#
Ответить
Anonymous
 AutoMapper — использовать сопоставление в профиле

Сообщение Anonymous »

Я создаю конфигурацию AutoMapper, структура которой не соответствует месту назначения в соотношении 1:1, мне приходится обернуть основной и дополнительный контакт в объект ContactResponse. Я не могу понять, как использовать созданное ранее сопоставление для сопоставления объекта Contact с CommunicationContactResponse без повторного выполнения конфигурации.
public class VendorResponseMappingProfile : Profile
{
public VendorResponseMappingProfile()
{
this.CreateMap()
.ForMember(dest => dest.Phone, opt => opt.MapFrom(src => src.Phone))
.ForMember(dest => dest.Email, opt => opt.MapFrom(src => src.Email));

this.CreateMap()
.ForMember(dest => dest.id, opt => opt.MapFrom(src => src.Id))
.ForMember(dest => dest.Name, opt => opt.MapFrom(src => src.Name))
.ForMember(dest => dest.Memo, opt => opt.MapFrom(src => src.Memo))
.ForMember(dest => dest.Active, opt => opt.MapFrom(src => src.Active))
.ForMember(dest => dest.Contact, opt => opt.MapFrom(src => new ContactResponse
{
// Here i have to redo the mapping from above are there a way to use the mapping from above instead?
PrimaryContact = src.PrimaryContact != null ? new CommunicationContactResponse
{
Phone = src.PrimaryContact.Phone,
Email = src.PrimaryContact.Email
} : null,
SecondaryContact = src.SecondaryContact != null ? new CommunicationContactResponse
{
Phone = src.SecondaryContact.Phone,
Email = src.SecondaryContact.Email
} : null
}));
}
}


Подробнее здесь: https://stackoverflow.com/questions/766 ... on-profile
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»