Hi, I'm looking to use an ORM as part of a large software rewrite. I'm rewriting an Access application in .NET. Naturally, I'm working with a nastly old legacy database. I'm hoping to use Windows forms data binding to bind to my persistent data (mainly to speed my development). I originally thought this could be easily accomplished with NHibernate since Windows Forms data binding only requires that a collection implements IList in order to support complex data binding, and NHibernate enables me to write my own POCO classes that could use an IList implementation for subclasses. However, the following statement from the documentation has me worried:
"The mapping of an IList or array requires a seperate table column holding the array or list index (the i in foo[i]). If your relational model doesn't have an index column, e.g. if you're working with legacy data, use an unordered ISet instead. This seems to put people off who assume that IList should just be a more convenient way of accessing an unordered collection. NHibernate collections strictly obey the actual semantics attached to the ISet, IList and IDictionary interfaces. IList elements don't just spontaneously rearrange themselves! " While I understand the rationale for this design, I'm afraid it's going to make the use of NHibernate more cumbersome in my project. I'm not eager to add a bunch of index columns on my subtables in order to support implementing the IList interface on my business objects. So my questions are: - Am I interpreting this situation correctly? I'm new to both .NET and NHibernate. - If so, are there any decent workarounds that won't affect my sleep at night ;) Thanks, Kyle --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "nhusers" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/nhusers?hl=en -~----------~----~----~----~------~----~------~--~---
