2
我打算使用AutoMapper的IObjectMapper接口为类型创建自己的自定义对象映射器,但是我没有看到任何可以使用AutoMapper注册已实现的映射器的地方。任何人都可以告诉我如何注册它。如何使用AutoMapper注册自定义ObjectMapper
编辑:有关它的更多信息,请按照discussion在AutoMapper-Users组
我打算使用AutoMapper的IObjectMapper接口为类型创建自己的自定义对象映射器,但是我没有看到任何可以使用AutoMapper注册已实现的映射器的地方。任何人都可以告诉我如何注册它。如何使用AutoMapper注册自定义ObjectMapper
编辑:有关它的更多信息,请按照discussion在AutoMapper-Users组
一条路可走这里是代替静态的注册表函数在MapperRegistry类。以下是当前版本:
public static Func<IEnumerable<IObjectMapper>> AllMappers =() => new IObjectMapper[]
{
#if !SILVERLIGHT
new DataReaderMapper(),
#endif
new TypeMapMapper(TypeMapObjectMapperRegistry.AllMappers()),
new StringMapper(),
new FlagsEnumMapper(),
new EnumMapper(),
new ArrayMapper(),
new EnumerableToDictionaryMapper(),
new DictionaryMapper(),
#if !SILVERLIGHT
new ListSourceMapper(),
#endif
new EnumerableMapper(),
new AssignableMapper(),
new TypeConverterMapper(),
new NullableMapper()
};
你会基本上复制的那一个,而这样做:
MapperRegistry.AllMappers =() => new IObjectMapper[] {
// Insert your custom mapper somewhere in this list
};
就做,你做任何Mapper.CreateMap或Mapper.Initialize业务之前。映射器按顺序进行评估。