FWIW, my 'vote' is for Option 2 (for the positive reasons mentioned and for
the negative reason mentioned in Option 1).  It seems the cleaner solution
to me.

Steve Bohlen
[email protected]
http://blog.unhandled-exceptions.com
http://twitter.com/sbohlen


On Sat, Oct 6, 2012 at 11:09 AM, Oskar Berggren <[email protected]>wrote:

> Hi,
>
> To support the order-by attribute in collection mapping, NHibernate uses
> the OrderedSet class from Iesi.Collections. Unfortunately there is no
> corresponding ordered set class available in the BCL in .Net 4.
>
> I have implemented a new OrderedSet based on ISet<T>, etc. from .Net 4,
> but now I'm not sure where to put it.
>
> Option 1
> Put it as e.g. NHibernate.Collections.Generic.OrderedSet. We will have no
> remaining dependency on Iesi.Collections. But some users prefer to avoid
> referencing NHibernate types directly from e.g. domain logic.
>
>
> Option 2
> Do a rework of Iesi.Collections targeting .Net 4 with breaking changes:
> Remove all classes now covered by the BCL. Remaining classes (such as
> OrderedSet) would have their interfaces updated to match .Net 4 interfaces.
> The current version is likely to be cumbersome in combination with .Net4
> anyway, due to naming conflicts. This would be similar to what C5 did:
> http://www.itu.dk/research/c5/ and
> http://www.itu.dk/research/c5/c5-rasmus-nielsen-2011-05-25.pdf
>
>
> What do you think?
>
>
> /Oskar
>
>
>

Reply via email to