Как я могу использовать automapper для обновления значений свойств другого объекта без создания нового?Automapper: Обновить значения свойств без создания нового объекта
ответ
Используйте перегрузку, которая принимает существующее назначение:
Mapper.Map<Source, Destination>(source, destination);
Да, он возвращает объект назначения, но это только для некоторых других малоизвестных сценариев. Это тот же объект.
Для выполнения этой работы у вас есть CreateMap для типов источников и получателей, даже они одного типа. Это означает, что если вы хотите Mapper.Map<User, User>(user1, user2);
Вам нужно создать карту, как этот Mapper.Create<User, User>()
Ha! Я только что нашел то же самое и добавил комментарий к принятому ответу. IMHO принятый ответ без вашего объяснения не является полным, но после моего комментария это может быть, наконец :) –
Это отличное дополнение. Однако в исходном вопросе не упоминались типы источника и адресата и не требовалось, чтобы они были одного типа. – jpaugh
- 1. Как сделать Automapper использовать точное значение без создания нового объекта
- 2. Automapper для обновления существующего объекта в отличие от создания нового
- 3. Как обновить объект User без создания нового?
- 4. Использование AutoMapper для создания нового экземпляра общего объекта
- 5. LINQ: выбор объекта и изменение некоторых свойств без создания нового объекта
- 6. Ожидайте создания нового объекта
- 7. Перехват создания нового объекта
- 8. Сброс Угловой ввод путем создания нового объекта и переназначения свойств
- 9. Как указать порядок столбцов doddlereport без создания нового объекта
- 10. слияние одного объекта в другой без создания нового объекта
- 11. Получение значения свойств объекта
- 12. Доктрина ManyToOne изменяет значения подключенного объекта вместо создания нового
- 13. Получение значения без создания объекта в struts2
- 14. значения Сериализации без создания объекта C#
- 15. избежать создания нового объекта метода
- 16. Как обновить изображение докера без создания нового изображения?
- 17. Как обновить график matplotlib без создания нового окна
- 18. Как обновить PDF без создания нового PDF-файла?
- 19. Как обновить метаданные PDF без создания нового файла?
- 20. Javascript - Опорожнение объекта вместо создания нового объекта
- 21. Использование Automapper для обновления существующего объекта с меньшим количеством свойств
- 22. Инициализация объекта без «нового» C++
- 23. Automapper - карта вложенных свойств
- 24. Преобразования имен свойств AutoMapper
- 25. LINQ отложенной загрузки и создания нового объекта
- 26. C# Automapper Сопоставление свойств словаря
- 27. Получение значения идентификатора объекта из нового метода для создания
- 28. JPA: как изменить идентификатор ссылки без создания нового объекта
- 29. AS3 получить текущее время без создания нового объекта
- 30. Как создать серию даты без создания нового объекта базы данных?
Спасибо, Джимми ... Я нарочно остался от AutoMapper, потому что я боялся кривой обучения воздействующего мое расписание. Я официально сожалею, что пробыл так долго ... это намного легче, чем я изначально думал. –
Automapper должен быть одной из самых полезных библиотек. Я слишком долго избегал этого, слишком долго. Я начал использовать его сегодня и очень удивлен тем, насколько легко его использовать. – mcottingham
Не работайте для меня. Я пытаюсь отобразить тот же тип, но он возвращает новый объект. Пользователь u1, u3 = новый Пользователь(); u1 = новый Пользователь { Id = 1, NickName = "vami" }; Пользователь u4 = Mapper.Map (u1, u3); Assert.AreEqual (u1.Id, u3.Id); Assert.AreEqual (u1.NickName, u3.NickName); –