Конфигурация AutoMapper списка - PullRequest
0 голосов
/ 07 марта 2012

У меня есть сущность и соответствующий DTO

public class PersonEntity {
    public int personId;
    public List<Contact> contacts;
}
public class PersonDto {
   public int personId;
   public List<int> contacts;
}

Использование следующей карты с AutoMapper

Mapper.Map<PersonDto, Person>();

Я использую AutoMapper для получения DTO, а это непроблема.

Я анализирую DTO обратно к Entity, чтобы обновить поля в Entity для операции сохранения, и меня больше не интересует список контактов.Automapper генерирует исключение с этим, поскольку ему не нравится отображать список целых чисел в список объектов.

любые предложения или более эффективные способы сделать это, пожалуйста.

Редактировать

используется решение

Mapper.CreateMap<PersonDto, Person>()
            .ForMember(x => x.contacts, y => y.Ignore());

Ответы [ 2 ]

1 голос
/ 07 марта 2012

Можете ли вы использовать метод игнорирования в конфигурации?

http://automapper.codeplex.com/wikipage?title=Configuration%20Validation

opt => opt.Ignore()

Но.Вам действительно нужно обновить сущность только для сохранения?Почему бы вам не отправить команду, которая содержит измененные данные.

0 голосов
/ 07 марта 2012

AutoMapper, как вы, возможно, знаете, ищет свойства в объектах с одинаковыми именами и типами, поэтому вам, скорее всего, придется изменить DTO или Entity, чтобы они соответствовали.

...