Обновить свойство назначения в Automapper - PullRequest
1 голос
/ 27 апреля 2019

У меня есть 2 свойства в классе Source, которые необходимо объединить и обновить в классе Destination.

Я попытался, как показано ниже, и в качестве значения было выбрано пространство имен назначения, а не фактическое значение.

// Код

    CreateMap<Source, Destination>().ForMember(x => x.Name, opt => opt.MapFrom(y => new Destination { Name = y.FirstName + y.LastName }));

Мне нужно, чтобы свойство FirstName & LastName из источника было объединено и установлено в свойство Name в классе Destiantion.

Где я не прав?

1 Ответ

3 голосов
/ 27 апреля 2019

Внутри вашего ForMember вызова x имеет тип Destination, а y имеет тип Source (именно поэтому они обычно называются dst и src).Элемент назначения предоставляется первым выражением (x.Name), поэтому внутри MapFrom вам просто нужно указать исходное выражение, которое будет назначено этому члену:

CreateMap<Source, Destination>()
    .ForMember(dst => dst.Name, opt => opt.MapFrom(src => src.FirstName + src.LastName));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...