¿Cómo puedo usar el Automapper para actualizar los valores de las propiedades de otro objeto sin crear uno nuevo?Automapper: actualice los valores de las propiedades sin crear un nuevo objeto
Respuesta
uso de la sobrecarga que toma el destino existente:
Mapper.Map<Source, Destination>(source, destination);
Sí, devuelve el objeto de destino, pero eso es sólo para algunos otros escenarios oscuros. Es el mismo objeto.
Para hacer esto, debe crear CreateMap para los tipos de origen y destino, incluso si son del mismo tipo. Eso significa que si quieres Mapper.Map<User, User>(user1, user2);
Es necesario crear un mapa como éste Mapper.Create<User, User>()
¡Ja! Acabo de encontrar lo mismo y agregué un comentario a la respuesta aceptada. EN MIh la respuesta aceptada sin su explicación no está completa, pero después de mi comentario podría ser, finalmente :) –
Esta es una gran adición. Sin embargo, la pregunta original no mencionaba los tipos de origen y destino, y no requería que fueran del mismo tipo. – jpaugh
- 1. Crear un objeto con propiedades,
- 2. Php: ¿Paréntesis al crear un objeto nuevo?
- 3. Uso de Automapper cuando los nombres de propiedades son diferentes
- 4. Actualice los valores de varias claves
- 5. Cómo imprimir recursivamente los valores de las propiedades de un objeto usando la reflexión
- 6. Propiedades nulo de Automapper
- 7. C++ Objeto sin nuevo
- 8. Cómo utilizar AutoMapper para construir objeto sin constructor predeterminado
- 9. ¿Cómo actualizar el objeto Usuario sin crear uno nuevo?
- 10. AutoMapper y es * propiedades especificadas
- 11. Obtener propiedades y valores del objeto desconocido
- 12. AutoMapper: Mapa de la DTO de nuevo a objeto de dominio con los objetos secundarios
- 13. ¿Cómo puedo evitar que Hibernate actualice los valores NULL?
- 14. manera rápida de conseguir los valores mín/máx entre las propiedades de objeto
- 15. Crear referencia al nuevo objeto
- 16. Muelle - Sustitución de los valores de las propiedades de los frijoles con los nuevos valores del Archivo de propiedades
- 17. ¿Cómo encontrar las propiedades de un objeto?
- 18. hibernate los valores de los objetos de copia en un nuevo objeto con el nuevo ID generado
- 19. Asignación de todas las propiedades de tipo 'X' con AutoMapper
- 20. Preservar los valores de mapa de bits al crear un nuevo mapa de bits desde System.Drawing.Image
- 21. Actualice los resultados de NSFetchedResultsController sin una nueva búsqueda
- 22. Maven: Resumen de los valores de las propiedades de Maven
- 23. Crear nuevo objeto de lista en Python
- 24. Inicializar un objeto con y sin nuevo operador
- 25. Obtener todas las propiedades con los valores de reflexión
- 26. LINQ seleccionar al nuevo objeto, el establecimiento de los valores de objeto en función de
- 27. Crear nuevo objeto EF con referencia de clave externa sin cargar todo el objeto de referencia
- 28. Crear un nuevo objeto de ubicación en javascript
- 29. ¿Cómo enumero las propiedades de un objeto JavaScript?
- 30. Cómo enumerar las propiedades de un objeto JavaScript
Gracias, Jimmy ... A propósito se mantuvieron alejados de AutoMapper porque tenía miedo de la curva de aprendizaje que afecta mi agenda. Lamento oficialmente que me haya mantenido alejado tanto tiempo ... es mucho más fácil de lo que inicialmente pensé. –
Automapper tiene que ser una de las bibliotecas más útiles que existen. Yo también lo evité por mucho tiempo, demasiado tiempo. Empecé a usarlo hoy y estoy muy sorprendido de lo fácil que es usarlo. – mcottingham
No funciona para mí. Intento hacer un mapa del mismo tipo, pero es un nuevo objeto de retorno. Usuario u1, u3 = nuevo Usuario(); u1 = new Usuario { Id = 1, NickName = "vami" }; Usuario u4 = Mapper.Map (u1, u3); Assert.AreEqual (u1.Id, u3.Id); Assert.AreEqual (u1.NickName, u3.NickName); –