AutoMapper изменил поведение AssertConfigurationIsValid() в отношении игнорируемых свойств в версии 12. Я не могу найти ничего в примечаниях к выпуску (https://docs.automapper.org/en/latest/1 ... Guide.html), чтобы объяснить это.
Это просто пример проходит тест в v11. В версии 12 не сообщается, что NickName не сопоставлен, хотя я явно это проигнорировал. Та же проблема возникает, если я использую MapFrom() вместо Ignore().
Это ожидаемое поведение или это ошибка?var c = new MapperConfiguration(cfg =>
{
cfg.AddProfile();
});
c.AssertConfigurationIsValid();
////////////////////////////////
public class MyMappingProfile : Profile
{
public MyMappingProfile()
{
// Fails in v11 up to v13.0.2-preview.0.3 because `Address` is unmapped
//CreateMap();
// Passes in v11 up to v13.0.2-preview.0.3 because `Name and `NickName` are mapped
//CreateMap(MemberList.Source);
// Passes in v11 because `Name is mapped and `NickName` is ignored
// Fails v12 up to v13.0.2-preview.0.3. The error message says `NickName` is unmapped
CreateMap(MemberList.Source)
.ForMember(d => d.NickName, o => o.Ignore())
;
}
}
public class Customer
{
public string Name { get; set; }
public string NickName { get; set; }
}
public class CustomerDTO
{
public string Name { get; set; }
public string NickName { get; set; }
public string Address { get; set; }
}
Подробнее здесь: https://stackoverflow.com/questions/785 ... rties-star