14

我已经使用 Automapper 一段时间了,它工作得非常整洁。我有以下映射:

Mapper.CreateMap<Models.MyModel,Entities.MyEntity>();

有没有什么方法,提供的任何方法typeof(Models.MyModel)都会返回typeof(Entities.MyEntity)

4

1 回答 1

11

您可以通过该方法获取所有注册TypeMap的s(Automapper用于存储源-目标类型对和其他映射相关信息的类型)Mapper.GetAllTypeMaps()

使用类型映射,您可以搜索您的源类型:

[Test]
public void Test()
{
    Mapper.CreateMap<Models.MyModel, Entities.MyEntity>();
    var destination = Mapper.GetAllTypeMaps()
                            .First(t => t.SourceType == typeof(Models.MyModel));
    Assert.AreEqual(typeof (Entities.MyEntity), destination.DestinationType);
}
于 2013-08-08T14:19:43.383 回答