Iesi.Collectionsの最新バージョンにIesi.Collections.Generic.ISetがありません。 3つの選択肢があるように思える:LinkedHashSetの 適切なNHibernate/Iesi.Collections.Generic.ISet <T>は何ですか?
Iesi.Collections.Generic.ReadOnlySetがISETに最も近い、およびドキュメントの状態になるようです。
... although it's advertised as immutable it really isn't.
Anyone with access to the wrapped set can still change the set.
ReadOnlySetが最適な担当者ですISETのための準備?現在のところ、実装はパブリックメソッドを使用してセットに項目を追加しているので、最も適しているようです。代替案(IList、bag?)は、より多くのリソースを必要とするか、または速く効率的ではないようですか?よりよい選択肢がありますか? (リストを手動で確認することができ、重複を持つべきではない)
私はのようなものをやる:
public virtual ISet<MyClass> MyClass
{
get { return this.myClass }
}
public virtual void AddItem(MyClass item)
{
... // Null checks and initialize ISet if null
myClass.Add(item)
}
基本的には、のようにマイナスの影響のない選択肢があり、選択肢に沸きますスピードなど?
Iesi.Collection v3もNuGetにあります。 –