Я хочу использовать DDD в новом проекте и сначала смоделировать мои классы, а затем сгенерировать схему базы данных на основе библиотеки классов. Я планирую сделать это с помощью инструмента NHibernate hbm2ddl SchemaExport
.
Проблема в том, что я не могу заставить SchemaExport
работать из-за странной проблемы catch-22, которую он ставит. SchemaExport
требует объект Configuration
, для которого сам по себе требуется действительный файл конфигурации NHibernate как а также набор сопоставлений базы данных.
Подвох-22 здесь заключается в том, что когда я выполняю Configure (), он жалуется "Could not determine the name of the table for entity 'MyEntity'; remove the 'table' attribute or assign a value to it."
Так что метод Configure()
требует, чтобы таблица существовала, в то время как SchemaExport
должен создавать ее на основе Configuration
что я не могу создать, потому что таблица не существует.
Итак, как же я должен создать действительный NHibernate Configuration
, содержащий сопоставления, необходимые для SchemaExport
, чтобы на самом деле сделать что-то полезное без броска Configure()
и жалоб, что он не может найти таблицы, которые быть создан с SchemaExport
? Есть ли «режим», в котором я могу установить объект Configuration
, чтобы он не проверял базу данных на наличие заданных таблиц, или мне нужно что-то еще сделать?