Microsoft.NET O/R mapper: choose your own!

You may also like...

  • Anonymous

    What do you think of this approach?

  • asava samuel

    Here is an ORM that works with Microsoft Access

  • asava samuel

    Zoran Maksimovic

    Here is an ORM that works with Firebird

  • Hy zoran
    Been there, done that… I must say that when you compare NH against EF, EF is still years behind in terms of capabilities and OCP. But MS is catching up. If I need to go down the relational route today I wouldn’t choose a fullblown ORM anymore, often they introduce too much shitload like mapping and more. I personally prefer TinyORMs like SimpleData, massive, dapper or petapoco. They are closer to the baremetal and are easy to test. Although having to much dynamic magic has its downsides also. But if I’m not restricted by some weird enterprise policy (like you have to use XYZ DB) I would go for documents models and choose sn appropriate storing engine.

    • Hi Daniel,
      Fully agree with what you said.
      My feeling though is that EF is less invasive than NHibernate, and perhaps “simpler” to use. Microsoft is progressing quite fast and adding new features. NHIbernate is powerful but is becoming bloated. Some of the features, although powerful, you wouldn’t really use, or use in some very niche scenarios. But, again, knowing both of them is definitively an advantage, whatever technology one chooses. My bad is that I never had the time to really try the other listed libraries, and I am sure that other libraries would have their own advantage too!

      TinyORM’s are the “next thing”. I used PetaPoco, but wasn’t too much impressed by it. You have to work by convention, which still mean keeping the code in sync, but probably that is not avoidable. As you said, it has it’s downsides.

      Perhaps in one of the next posts, it would be interesting to compare what one would do by using EF vs SimpleData or others. Just for the sake of seeing what is the pro/cons.


    • As you allude to when you mention document models, I think many developers are still skipping the question which needs to be asked before thinking about an ORM. That is, “Do I need to use a relational database?”.