使用AutoMapper从POCO映射到NHibernate代理对象时出错

时间:2012-10-01 15:50:00

标签: c# automapper proxy-classes

我们最近升级了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(源,目标)方法与代理一起使用?

注意:这是使用AutoMapper 2.2.0。我相信这在0.3中运行良好。

1 个答案:

答案 0 :(得分:12)

这是一个已知问题,修复了开发分支。在这里查看预发布版本:

AutoMapper 2.2.1-ci8

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