сопоставить условие с истинным или игнорировать приложение - PullRequest
0 голосов
/ 29 сентября 2019

У меня есть поле "IsActive" в DTO и Entity.

 public class Dto {
    public int Id {get;set;}
    public bool IsActive {get;set;}
 }

 public class Entity {
    public int Id {get;set;}
    public bool IsActive {get;set;}
 }

И я хочу отобразить это ниже

* Set value to true if Id == 0
* Ignore mapping if ID != 0

Как я могу это сделать?

        CreateMap<Dto, Entity>(MemberList.Source)
            .ForMember(dto => dto.Active, options => options.Condition((dto, entity) => ??));

Я сохранил IsActive в Dto, так как мне нужно передать его клиенту.

Ответы [ 2 ]

1 голос
/ 29 сентября 2019

наконец это то, что я получил

            .ForMember(entity => entity.Active, options => options.MapFrom((dto, entity) => dto.Id == 0 ? true : entity.Active))
0 голосов
/ 29 сентября 2019
CreateMap<Dto, Entity>(MemberList.Source).ForMember(dto => dto.Active, options => options.Condition((dto, entity) => entity.Id==0 ? true : entity.Active));
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...