NHibernate:无法转换PersistentBag

时间:2010-01-29 17:27:51

标签: nhibernate fluent-nhibernate one-to-many

10月份问了这个问题(unable-to-cast-object-of-type-nhibernate-collection-generic-persistentgenericbag)。基本上,我有一个POCO,它具有由List< ChildType>建模的一对多关系。当你试图在NHibernate中获取/保存它时,你会得到一个类型转换异常,说它正试图从NHibernate.Collection.Generic.PersistentGenericBag转换为List,并且不能这样做。

Mauricio Scheffer回答说你必须将你的POCO定义为IList<>而不是List<>和答案我也找到了其他地方。

我的问题是POCO也必须是XmlSerializable,而Xml不知道如何序列化接口。

除了创建完全重复的数据传输对象以及它们之间的映射之外,还有其他方法可以解决此问题吗?而且,在我看来,这将是一个相对常见的问题。 NHibernate不能提供合适的TypeCast运算符吗?

1 个答案:

答案 0 :(得分:0)

您好我回答了这个问题,我使用Dozer框架解决了这个问题 你可以在这里查看解决方案 NHibernate: How do I XmlSerialize an ISet<T>?