AutoMapper – как настроить одно сопоставление для двух разных вариантов использования?C#

Место общения программистов C#
Anonymous
AutoMapper – как настроить одно сопоставление для двух разных вариантов использования?

Сообщение Anonymous »

У меня есть ситуация, когда я получаю некоторые данные о поездках из API. Я использую AutoMapper для сопоставления этой «модели API» с сущностью EF Core для хранения в моей базе данных SQL Server.
Большинство сопоставлений просты, но с одним у меня возникают трудности. ситуация: у TripModel есть свойство ReasonForTravel, которое является значением int?. Если оно имеет значение, и это значение > 0, то я хочу использовать собственный ValueConverter для преобразования этого int в нужную мне строку, но если ReasonForTravel вообще не имеет значения или dest.Firstname, opt => opt.MapFrom(src => src.Firstname))
.ForMember(dest => dest.Lastname, opt => opt.MapFrom(src => src.Lastname))

// but how do I specify this now?? This is for the case of ReasonForTravel > 0
.ForMember(dest => dest.ReasonForTrip, opt => opt.ConvertUsing(new TravelReasonConverter(), src => src.Lastname))

// and this is for the case of ReasonForTravel dest.ReasonForTrip, opt => opt.MapFrom(src => src.CustomTravelReason));
}
}


Подробнее здесь: https://stackoverflow.com/questions/783 ... -use-cases

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