SchemaExport, NHibernate и удаление внешних ключей - PullRequest
2 голосов
/ 03 марта 2009

Я строю свое отображение, а затем использую экспорт схемы для обновления моей БД. Однако, если я удаляю связь в своем отображении, так как она больше не находится в отображении, при запуске SchemaExport она не удалит внешний ключ для удаленной связи. Это означает, что тогда не удастся удалить таблицу, связанную с этим внешним ключом. Что также означает, что он не может воссоздать таблицу, и я получаю исключение «В базе данных уже есть объект с именем Foo». Можно ли каким-то образом удалить таблицу через Экспорт схемы?

1 Ответ

1 голос
/ 28 июля 2010

Самый простой способ - сделать SchemaExport.Drop со старой конфигурацией nhibernate, а затем создать с новой.

В качестве альтернативы вы можете удалить и заново создать базу данных, вот пример, который делает это на уровне файлов для SQL Server Express: http://nicholas.piasecki.name/blog/2010/01/integration-testing-with-sql-server-express-2008-nhibernate-and-mstest/

...