AutoMapper Inline Ignore - PullRequest
       9

AutoMapper Inline Ignore

0 голосов
/ 16 мая 2018

Я использую Auto Mapper для сопоставления источника с целевым объектом, я настроил свой маппер так:

Mapper.Initialize(cfg => {    
   cfg.CreateMap< SourceModel, DestModel>();   
}

Это сопоставление объектов источника и назначения используется во многих местах, теперь в некоторых случаях мне приходится игнорировать одно из полей модели источника, но не для всех мест. Я мог бы сделать так:

 CreateMap< SourceModel, DestModel>()
   .ForMember(x => x.CreatedDateTime, opt => opt.Ignore());

Но это будет игнорировать свойство CreatedDateTime для всех сценариев, поэтому я хочу сделать это только встроенным.

 Mapper.Map< DestModel>(sourceObject); //Here I want to ignore one property.

Пожалуйста, помогите мне, как я могу этого достичь.

1 Ответ

0 голосов
/ 16 мая 2018

Звучит так, как будто вам нужно условное отображение.

Этот ответ на SO показывает, как его использовать, и документацию можно найти здесь .

пример использования:

Mapper.CreateMap<SourceModel, DestModel>()
 .ForMember(dest => dest.CreatedDateTime, opt => opt.Condition(source => source.Id == 0))
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...