Я ищу .net OR / M, который использует шаблон Active Record и позволяет разработчику определять миграции, которые обновят схему базы данных в коде. Я видел ActiveRecord на http://www.castleproject.org/activerecord/index.html - но он плохо документирован (с ужасно устаревшими образцами) и нет готового к выпуску выпуска. Моя целевая СУБД - MSSQLE 2008; но предпочтительно сгенерированный SQL будет совместим с MSSQL 2000.
Я бы предпочел не использовать nHibernate, так как я понимаю, что для поддержки схемы требуется файл XML, и он не поддерживает миграцию. Благодаря отражению и атрибутам .net использование библиотекой XML в этой ситуации недопустимо и не очень похоже на обычное использование платформы.
Моя главная задача - сохранить схему данных. Поскольку это относится к проекту ASP.NET MVC, необходимость синхронизировать схемы базы данных между средами является обязательной. Тот факт, что я не могу найти ни одного OR / M со встроенной поддержкой миграции, удивителен, учитывая популярность .net, поскольку, как я уже говорил, настраиваемые атрибуты и рефлексия делают это очень просто в коде.
Возможность определения моих сущностей без внешнего файла конфигурации (например, ADO.NET Entity Framework) вне моего класса сущностей - это то, чего я хочу избежать. Нет причин, по которым OR / M не может вывести имена столбцов с помощью пользовательских атрибутов связанных свойств.
В любом случае, есть предложения? То, что я прошу, возможно, не существует; и если да, то есть ли из первых рук использование других .net OR / Ms, которыми вы можете поделиться?