Я использую NHibernate везде.На .NET Core, на .NET Framework, с 2009 года. Только в некоторых проектах, которым запрещено использовать NH, я использовал EF или другой orm или что-то подобное (Linq для SQL или DAAB).
NHibernate обеспечивает больше контроля, больше точек конфигурации и больше функций вместо EF.Это моя рекомендация во всех сценариях, которые используют ORM.Даппер тоже решил несколько вопросов.Но если у меня есть NH, мне не нужен Dapper, потому что у нас есть несколько типов работы с базой данных.
Больше возможностей, больше ответственности.NHibernate является более сложным.Нуждается в глубоком понимании вашей сложности, чтобы понять, как обеспечить наилучшую производительность и подход для решения любых задач взаимодействия с базами данных.Вы делаете больше, но вы должны знать, чтобы делать.