2011-02-01 2 views
0

Я знаю, что эти вопросы задавались много раз, но некоторые из вопросов - 6 месяцев, а продукты развиваются.Fluent NHibernate with Legacy database compound question

У меня есть схема базы данных, недавно разработанная некоторыми настоящими профессионалами, красивая в ее конструкции, сидящая в Enterprise Architect, готовая к генерации в любой тип ядра базы данных, который требуется. Я пока не хочу сбрасывать его. Его около 3-4 тыс. Столов.

У меня есть ряд вопросов на самом деле. Я берусь за чтение стека и различных блогов, что Fluent NHibernate с Automappings and Conventions - лучший способ использования NHibernate для создания домена, который хорошо интегрируется с устаревшим db. Я знаю, что это субъективно, но разве это так?

Есть ли какой-либо пример или проекты с открытым исходным кодом, которые используют FH для сопоставления с существующей базой данных, чтобы увидеть, как она работает в больших масштабах.

Также перед тем, как я пойду, есть ли у кого-нибудь опыт использования коммерческого инструментария для этого? Каково сейчас состояние искусства. Я посмотрел на весь комплект, но многие из документов ориентированы на создание новых полей, и трудно определить, какой был бы лучший выбор, если бы FH был исключен. Это потребует официального тестирования продукта, показателей и отчета, созданного для определения наилучшего выбора, но количество опыта.

Спасибо. Любая помощь будет оценена по достоинству. Боб.

ответ

1

Я использовал собственные NHibernate-сопоставления, а также FNH для устаревших баз данных. Преимущество FNH, IMHO, действительно выражается, когда вы можете использовать функции AutoMapping. Для устаревшей базы данных, предполагая наличие сплошных соглашений, используемых при построении схемы, довольно просто создать пользовательские классы FluentNHibernate, которые затем будут использоваться вместе с функциями AutoMap. Однако вам не нужно AutoMap, и ClassMap (и/или переопределения AutoMap) может предоставить вам всю гибкость, необходимую для работы с существующей схемой. Конечно, это субъективно. Некоторые утверждают, что файлы сопоставления XML NHibernate лучше против старых приложений, поскольку вы явно управляете сопоставлениями. Каждому свое. Я сделал и то и другое, и увидел плюсы и минусы обоих. Я предпочитаю FNH, когда NHibernate является выбранным O/RM.

Отъезд SharpArchitecture для примеров FNH (и других практик NHibernate). Прошло некоторое время с тех пор, как я вытащил их источник, но в последний раз, когда я блуждал по нему, это был хороший пример того, на что способны NHibernate и FNH.

+0

спасибо. Немного реальных советов очень прост. –