类型或命名空间名称“ISet”不存在

时间:2016-03-23 19:10:20

标签: c# nhibernate smartclient iesi-collections

我正在将Windows智能客户端解决方案从nHibernate 2.2升级到4.0。 这也需要更新Iesi.Collections(4.0.1.4000)。

在这一行:

protected Iesi.Collections.Generic.ISet<PermitEvent> eventSet;

我收到此错误:

The type or namespace name 'ISet' does not exist in the namespace 'Iesi.Collections.Generic' 

这个问题在其他两个地方没有得到答复:
http://www.c-sharpcorner.com/forums/the-type-or-namespace-name-iset-could-not-be-found http://www.resolvinghere.com/cc/the-type-or-namespace-name-iset-could-not-be-found.shtml

我该怎么办?

1 个答案:

答案 0 :(得分:3)

使用NHibernate 4,在大多数情况下你是do not need anymore to explicitly depend on Iesi

您应该将实体代码迁移到System.Collections.Generic.ISet<T>

这就是我所做的,甚至在遇到Iesi的任何问题之前。 如果您想继续使用Iesi,您可以通过提供NHibernate.Bytecode.ICollectionTypeFactory collectiontype.factory_class def fixture_params params.require(:fixture).permit(:value, :other_value) end 来提供自己的:opposing_team。但我不认为这是值得的。

optional setting,“**从NH3.3.3.GA到4.0.0.GA的已知突发变化”部分:

  

Iesi.Collections中集合类型的许多用法现已更改为使用BCL中的相应类型。这些类型的API略有不同。