title: Nhibernate: how to add AddAll method for 'Sets'?
body: <p>Since I installed current version of Nhibernate (version 4.0.0.4000) Iesi.Collections.Generic.HashedSet is not longer included. </p>
  
  <p>I used this collection type in many parts of my code, because it has a "AddAll" method, which it very useful for me.</p>
  
  <p>However - now in the same namespace are only 3 types left:
      <code>LinkedHashSet&lt;T&gt;</code>
      <code>ReadOnlySet&lt;T&gt;</code>
      <code>SychronizedSet&lt;T&gt;</code></p>
  
  <p>None of them has such a method. 
  I tried to implement it by myself, but it does not work.</p>
  
  <p>Here is what I did:</p>
  
  <ol>
  <li><p>Created an interface "IMySet"</p>
  
  <p>public interface IMySet : ISet
  {
      void AddAll(IEnumerable items);
  }</p></li>
  <li><p>Copied full source from "LinkedHashSet" implementation, renamed it to "TestSet" and replaced the derived interface.</p></li>
  </ol>
  
  <p>before: </p>
  
  <pre><code>public class TestSet&lt;T&gt; : ISet&lt;T&gt;
  </code></pre>
  
  <p>after: </p>
  
  <pre><code>public class TestSet&lt;T&gt; : IMySet&lt;T&gt;
  </code></pre>
  
  <p>Unfortunately this does not work. If I try to save an object, which implements IMySet, an error occurs:</p>
  
  <p>NHibernate.Tuple.Entity.PocoEntityTuplizer.SetPropertyValuesWithOptimizer(Object entity, Object[] values)</p>
  
  <p>I don't understand what's the problem. Can anyone please help? </p>