如何使用AutoMapper注册自定义ObjectMapper

我打算使用AutoMapper的IObjectMapper接口为类型创建我自己的自定义Object Mapper,但是我没有看到任何可以用AutoMapper注册实现的mapper的地方。 谁能告诉我如何注册它。

编辑:有关此内容的更多信息,请按照AutoMapper-Users组中的讨论进行操作

这里的一种方法是替换MapperRegistry类中的静态注册表函数。 这是当前版本:

public static Func> 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业务之前,请执行此操作。 按顺序评估映射器。