I hold in August two presentations at the .Net User Group Bern together with René Leupold. In both presentations the topic was object relational mapping in the .Net world. So we showed Microsoft Entity Framework 4.0 and NHibernate. My part was NHibernate and Rene showed EF.
In the first presentation which was on 16th August 2010, we presented the following stuff:
- Introduction into ORM
- Theory (ORM impedance mismatch, persistence ignorance and ORM isn’t a silver bullet)
- Approaches how to map entities (top down, middle out, bottom up and meet in the middle)
- Introduction into Entity framework (history, vote of no confidence, supported approaches)
- Short demo of Entity framework (configuration, hello world sample)
- Introduction into NHibernate (history, multiple options to do things, supported approaches)
- Short demo of NHibernate (configuration, hello world sample)
- Mappings and short demos of them (1:m, m:n, 1:1, self references, 1 class and multiple tables, 1 table and multiple classes, inheritance with TPH, TPT and TPC)
You can find the slides here.
In the second presentation which was on 23th August 2010, we presented the following topics:
- Queries (I showed HQL, Criteria API with QBC and QBE, NativeSQL, Named Queries and QueryOver in NHibernate 3.0)
- Lazy and Eager Loading
- Debugging and Profiling (also with NHProf from Ayende)
We had more stuff for the second session like Concurrency, Auditing, Validation and Caching, but we hadn’t the time to show all these things. You can find the slides from the second session here.
The samples of both sessions are also available. If you use them commercially or for other public activities, please mention the authors (NHibernate: Patrick Weibel, EF: René Leupold). The samples for NHibernate could be found here and those for EF you find here.