c# - mvc - mapper initialize
Uso de Automapper cuando los nombres de propiedades son diferentes (2)
Creo que tendrás que implementar tu propia INamingConvention para INamingConvention esto.
Estamos usando AutoMapper de Codeplex y para mí el objeto de destino tiene todas las propiedades que terminan en ''Campo'', es decir, cityField y el objeto de origen solo tiene la ciudad.
Puedo usar el siguiente código para lograrlo, pero todas las propiedades tienen el sufijo "Campo" y hay 20 propiedades.
.ForMember(dest => dest.cityField, opt => opt.MapFrom(origin => origin.City));
¿Hay alguna otra forma de ignorar la palabra ''Campo'' cuando se asigna y para que se pueda asignar sin usar .ForMember () 20 veces?
Puedes intentar reconocer los postfixes:
Mapper.Initialize(cfg => {
cfg.RecognizePostfixes("Field");
cfg.CreateMap<Source, Dest>();
});
El reconocimiento de prefijos también funciona de forma local en los perfiles, si se trata de un conjunto de mapas a los que se aplica esto.