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
-~----------~----~----~----~------~----~------~--~---

Reply via email to