tutorial mvc initialize inicializar example createmap c# properties automapper

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.