По умолчанию AutoMapper пытается сопоставить все свойства типа источника с типом назначения. Если некоторые свойства недоступны в целевом типе, они не вызовут исключение при выполнении сопоставления. Однако при использовании ValidateMapperConfiguration () будет выдано исключение.
class SourceType
{
public string Value1 { get; set; }
}
class DestinationType
{
public string Value1{ get; set; }
public string Value2{ get; set; }
}
AutoMapper.AutoMapperConfigurationException: следующее 1
свойства на DestinationType не отображаются: Value2 Добавить пользовательский
сопоставление выражения, игнорирование или переименование свойства в SourceType.
Вы можете переопределить это поведение, установив Глобальный параметр, чтобы игнорировать все свойства, которые не существуют в целевом типе.
Вы можете сделать настройку на уровне класса или на уровне свойства или на глобальном уровне, как я сказал
Просто добавьте следующий код в Global.asax
Mapper.Initialize(cfg =>
{
cfg.ValidateInlineMaps = false
}
В свойстве level игнорирует свойство Value2 при сопоставлении этих двух объектов. Для этого нам нужно использовать свойство Ignore AutoMapper со свойством Address
config.CreateMap<SourceType,DestinationType>()
//Ignoring the Value2 property of the destination type
.ForMember(dest => dest.Value2 , act => act.Ignore());