What is the best ORM for enterprise system

I am responsible for the reorganization of the enterprise system to make it more convenient, extensible and verifiable. When the project was launched, the team decided to switch to LINQ2SQL, which, as we now understand, was bad due to the fact that it automatically executes a lot of code, implementing INotifyPropertyChanged in the domain layer. This causes serious performance problems in certain areas.

This is an average system that needs to be rewritten from scratch. Introducing the new ORM, I am trying to achieve the following:

  • Improving Domain Level Performance
  • Reduce grip as much as possible
  • Allow smaller clients on the system to access only certain areas of the domain level
  • Reducing the efforts of the development team when changing data access level changes to domain level changes.

I am currently evaluating EF and NHibernate. I tend to use EF as I hope that Microsoft will continue to focus on its development, and I know that it will always be well integrated with VS. I was told that NHibernate is the best option if I need more granular control over my domain level.

Am I missing any other good options? What is the best solution here and why?

+6
source share

All Articles