Есть ли в любом случае Automapper игнорировать все свойства определенного типа? Мы пытаемся улучшить качество нашего кода, проверяя сопоставления Automapper, но для размещения .Ignore()
для всех IEnumerable<SelectListItem>
, которые всегда создаются вручную, создается трение и замедляется развитие.
Любые идеи?
Возможная идея после создания сопоставлений:
var existingMaps = Mapper.GetAllTypeMaps();
foreach (var property in existingMaps)
{
foreach (var propertyInfo in property.DestinationType.GetProperties())
{
if (propertyInfo.PropertyType == typeof(List<SelectListItem>) || propertyInfo.PropertyType == typeof(IEnumerable<SelectListItem>))
{
property.FindOrCreatePropertyMapFor(new PropertyAccessor(propertyInfo)).Ignore();
}
}
}