Замок ActiveRecord действительно хорошо работает для небольших и средних проектов, основанных на MVC - я сейчас использую его для нескольких проектов и считаю его очень подходящим для ASP.NET MVC .
Это реализация шаблона активной записи , который использует NHibernate под капотом - другими словами, если вы довольны наличием одного класса на таблицу базы данных, он будет выполнять большую часть NHibernate Конфигурация для вас, оставляя вам свободно писать код, как:
Customer bob = Customer.Find(/* customer Id goes here */);
bob.FirstName = "Robert";
bob.Save();
Invoice newInvoice = new Invoice();
newInvoice.Products.Add(Product.Find(/* product ID goes here */);
bob.Invoices.Add(newInvoice);
bob.Save();
с очень маленькой явной конфигурацией NHibernate (конечно, при условии, что в вашей БД есть таблицы Customer, Invoice и Product)
Поскольку это NHibernate под капотом, переход на NHibernate, если вам нужно, должен быть простым - у вас уже есть все необходимые ссылки и библиотеки. Есть несколько аспектов поведения NHibernate, которые вы не можете игнорировать (например, области видимости сессий и сброс ) - но не так уж сложно разобраться, что с ними происходит, и использовать они в ActiveRecord помогут вам начать, если / когда вам нужно будет перейти непосредственно к использованию NHibernate.