Truistic wrote:
I have a customer who is wanting to use nHibernate, but after investigating it, it seems to me that there is a fundamental difference in ORM ideology that I just can't put my finger on. Add to that the fact that you have to hand code the XML mapping files. On the other hand, there seems to be some advanced mapping techniques possible in nHibernate that don't seem to be possible with LLBLGen.
Yes, they take different approches. The main one is, that LLBLGen favors data modeling and extending your datamodel into the middle tier. NHibernate favors object modeling, then mapping your object (domain) model onto your database.
There are several tools that allow you to generate NHibernate domain model and mappings from your data model, a la llblgen. See MyGeneration, Codus, Codesmith. There are also several tools that allow you to generate a schema from a domain model and mappings. See PuzzleFramework.Net, and AndrMDA, etc. There are also some Java tools that can be used.
NNibernate puts ALL of the mapping in the XML, where with LLBLGen you have to specify some of the mapping in your code, such as JoinPaths.
Truistic wrote:
I'm not trying to make the case for nHib, I'm really trying to make the case for LLBLGen. Does anyone have some free time to elaborate on the differences in modeling techniques between the two and the advantages of using LLBLGen over nHib?
I'm not gonna go there, they are both capable tools that can get the job done.
The one advantage LLBLGen has over NHibernate is Fran's. He has an awesome comittment to support... support both in answering questions and fixing bugs... you are not going to get that level of support for NHibernate unless you hire someone, or become and expert at it, including knowing the code. This may be enough to tip the scales to LLBLGen for you.
BOb