Hi again,
I am still evaluating O/R mapping systems with a view to our ISV using one for our next application.
I think I didn't make my case well enough in my last post, and will attempt to recitfy this.
We have a wide variety of clients and for a wide variety of reasons (mostly firewall/security and politics) our Click-once-delivered WinForms applications should not be talking directly to their databases. Consequently, we need to use a technology like remoting or WCF to act as a channel for data. This way we can configure the "known and trusted" server to talk to the database and pass data back to the client.
There does not seem to be a lot of information on the net for getting NHibernate to work in this sort of distributed environment (perhaps it's not meant to work like this?). I have come across the following which helped a little:
http://lunaverse.wordpress.com/2007/05/ ... hibernate/
The problem seems to be that even if one can get NHibernate objects to remote successfully, the object cache would still be on the server, which defeats one of the most importante reasons to use the system (i.e. we need o/r mapping for the caching and lazy loading that it provides)
I have looked at a number of other systems and the only one that seems to support WCF in a simple and concise way if eXpress Persistent Objects. It supports the remoting of the IDataStore interface which is a low-level interface through which the data is passed to the o/r mapping system [No, I do not work for DevExpress, and yes, their system is far less mature and far less configurable than NHibernate :) ]
If anyone has been successfully configured NHibernate for this architecture, I would be extremely grateful for your thoughts.
Thanks,
Mark.