我们最近升级了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中效果很好。

最佳答案

这是一个已知问题,已修复开发分支。在此处查看预发行版本:

AutoMapper 2.2.1-ci8

该修补程序将在2.2.1版本中很快发布。

09-10 21:38