【问题标题】:Unable to cast PersistentGenericBag to ISet exception无法将 PersistentGenericBag 强制转换为 ISet 异常
【发布时间】:2015-09-10 07:29:37
【问题描述】:

我遇到了这个异常:

无法将'NHibernate.Collection.Generic.PersistentGenericBag`1[System.Int64]' 类型的对象转换为'System.Collections.Generic.ISet`1[System.Int64]' 类型

我用:

public virtual ISet<long> Ids { get; set; }

我没有在这里使用 FNH 进行任何显式映射。

【问题讨论】:

  • 明确使用 Iesi.Collections.Generic.ISet 似乎可以解决问题,但我在某处读到 nhibernate 也应该能够处理 .net 4 的 iset ...?

标签: c# nhibernate


【解决方案1】:

如果您将您的收藏映射为Bag,您应该在您的实体中使用IList&lt;T&gt; 进行收藏。

如果您映射为 Set,那么您可以使用 Iesi.Collections 中的 ISet&lt;T&gt; 或 .NET 中的 ICollection&lt;T&gt; 接口

【讨论】:

【解决方案2】:

NHibernate 不支持开箱即用的 NET4 ISet。您需要添加this package

【讨论】:

猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-02-20
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-04-05
  • 2023-03-19
  • 2012-09-21
相关资源
最近更新 更多