none
mapear clases usan herencia con automapper RRS feed

  • Pregunta

  • Hola como estan tengo el siguiente código:

    public class Persona{           
            public Int64 IdPersona { get; set; }
            public string Nombre { get; set; }        
    }

    public class PersonaNatural: Persona{        
            public string Descripcion { get; set; }  
    }

    public class Personadto {           
            public Int64 IdPersona { get; set; }
            public string Nombre { get; set; }        
    }

    public class PersonaNaturaldto: Personadto {        
            public string Descripcion { get; set; }  
    }

    Estoy usando el siguiente método para mapear objetos entre ellos y funciona

    public static PersonaNaturaldto mapearPersonaNatural(Persona padre)
            {
                Mapper.Initialize(cfg =>
                {
                    cfg.CreateMap<Persona, Personadto>()
                        .Include<PersonaNatural, PersonaNaturaldto>();
                    cfg.CreateMap<PersonaNatural, PersonaNaturaldto>();
                });
                var result = Mapper.Map(padre, padre.GetType(), typeof(Personadto));
                return (PersonaNaturaldto)result;

            } 

    Para este último método como hago para hacerlo generico usando <T> en C#

    Agradezco cualquier idea por favor la verdad tengo que usarlo algunas veces con PersonaJuridica hacia PersonaJuridicadto o viceversa, todos tiene herencia simple, sin objetos como propiedades 

    jueves, 2 de marzo de 2017 20:36