我们最近升级了 AutoMapper,在以某种方式映射项目时遇到了问题。
当我加载 NHibernate 域对象并尝试以下列方式将我的模型映射到它时:
var myPoco = new MyPoco();
var proxy = repository.Load<MyDomainObject>(id);
Mapper.Map(myPoco, proxy);
我收到以下错误:
Missing type map configuration or unsupported mapping.
MyPoco-> MyDomainObjectProxy
但是,如果我使用该方法的以下重载,则不会出现异常:
var myDomainObj = Mapper.Map<MyPoco, MyDomainObject>(myPoco);
当您查看 AutoMapper 代码时,您可以看到这些方法在代码库中调用了不同的基本方法,这就是它们行为不同的原因。
这是 AutoMapper 较新版本的错误,还是有另一种使用 Mapper.Map(source, destination) 代理的方法?
注意:这是使用 AutoMapper 2.2.0。我相信这在 0.3 中运行良好。