Sí, se puede hacer, pero debe especificar cuándo omitir la propiedad de destino utilizando Condition()
en la configuración de asignación.
Aquí hay un ejemplo. Tenga en cuenta las siguientes clases:
public class Source
{
public string Text { get; set; }
public bool Map { get; set; }
}
public class Destination
{
public string Text { get; set; }
}
El primer mapa no sobrescribirá destination.Text
, pero el segundo testamento.
Mapper.CreateMap<Source, Destination>()
.ForMember(dest => dest.Text, opt => opt.Condition(src => src.Map));
var source = new Source { Text = "Do not map", Map = false };
var destination = new Destination { Text = "Leave me alone" };
Mapper.Map(source, destination);
source.Map = true;
var destination2 = new Destination { Text = "I'll be overwritten" };
Mapper.Map(source, destination2);
¿Qué? Pensé que esto es exactamente para lo que es esto? Por favor, elabore cómo transforma sus objetos de dominio a sus modelos de vista. – Sam
Lo que quise decir en lo anterior fue ¿cómo devuelves tus Modelos de Edición/Vista a tus Objetos de Dominio? – Sam
¿Hace esto en sus controladores? – Sam