Click here to Skip to main content
13,248,365 members (39,017 online)
Click here to Skip to main content
Add your own
alternative version

Tagged as


3 bookmarked
Posted 14 Mar 2011

What to Look for in an ORM Solution?

, 14 Mar 2011
Rate this:
Please Sign up or sign in to vote.
What to Look for in an ORM Solution?

One question that I am sometimes being asked is what to look for in an ORM solution or more properly which ORM ORM_thumb[1]is preferable and why. The decision which ORM to choose is very crucial to the project development since after you start developing it will be hard to go back and use another ORM solution. Since there are many ORMs out there, here is a checklist that will help you to evaluate ORM solutions and to pick the one that fits your needs:

  • Basic Features
    • Can handle inheritance & polymorphism
    • Can handle different types of relations (1-1, 1-N, N-M)
    • Supports transactions
    • Supports different SQL operations (aggregation, grouping, ordering)
  • Extended Features
    • Multiple databases support
    • Allows execution of dynamic queries using a query language
    • Data Binding support
    • Stored Procedure and Function support (only if needed)
    • Can handle very big models and databases
  • Flexibility
    • Allows customization of SQL queries
    • Supports Joins and Sub-Queries
    • Supports concurrency
    • Can handle specific Database types (identity, GUIDs, XML…)
  • Ease of use
    • Graphical designer for mappings
    • Auto generation of model classes
    • Generate Database schema (Model First approach)
    • Maintainable (when Database schema changes)
  • Optimizations & Performances
    • Allows Lazy loading
    • Allows Eager loading
    • First level cache
    • Second level cache
    • Optimizes queries
    • Supports Bulk updates & deletions
  • SOA
    • Supports model serialization
    • Allows loading of disconnected objects
    • Supports disconnected state tracking
    • Model objects are readable in other platforms
  • Other things to consider
    • Price
    • Performance
    • Support for multiple platforms
    • Source code provided
    • Documentation & Support
    • Maturity
    • Vendor stability

This is a suggested list and there are more things to evaluate other than that which can help you to make the relevant decision.


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


About the Author

Gil Fink
Technical Lead sparXys
Israel Israel
Gil Fink is a web development expert and ASP.Net/IIS Microsoft MVP. He is the founder and owner of sparXys. He is currently consulting for various enterprises and companies, where he helps to develop Web and RIA-based solutions. He conducts lectures and workshops for individuals and enterprises who want to specialize in infrastructure and web development. He is also co-author of several Microsoft Official Courses (MOCs) and training kits, co-author of "Pro Single Page Application Development" book (Apress) and the founder of Front-End.IL Meetup. You can read his publications at his website:

You may also be interested in...


Comments and Discussions

-- There are no messages in this forum --
Permalink | Advertise | Privacy | Terms of Use | Mobile
Web02 | 2.8.171114.1 | Last Updated 14 Mar 2011
Article Copyright 2011 by Gil Fink
Everything else Copyright © CodeProject, 1999-2017
Layout: fixed | fluid