2
我構建我的映射,然後使用模式導出來更新我的數據庫。但是,如果我在映射中刪除關聯,因爲它不再位於映射中,所以當我運行SchemaExport時,它不會刪除已刪除關聯的外鍵。這意味着它將無法刪除與該外鍵關聯的表。這進一步意味着它不能重新創建表,並且我得到一個「數據庫中已經有一個名爲Foo的對象」異常。有什麼方法通過Schema Export刪除表嗎?SchemaExport,NHibernate和刪除外鍵
我構建我的映射,然後使用模式導出來更新我的數據庫。但是,如果我在映射中刪除關聯,因爲它不再位於映射中,所以當我運行SchemaExport時,它不會刪除已刪除關聯的外鍵。這意味着它將無法刪除與該外鍵關聯的表。這進一步意味着它不能重新創建表,並且我得到一個「數據庫中已經有一個名爲Foo的對象」異常。有什麼方法通過Schema Export刪除表嗎?SchemaExport,NHibernate和刪除外鍵
最簡潔的方法是用舊的nhibernate配置做SchemaExport.Drop,然後用新的配置創建。
另外,您可以刪除並重新創建數據庫本身,這裏是它做到這一點,在SQL Server Express的文件級別的例子:http://nicholas.piasecki.name/blog/2010/01/integration-testing-with-sql-server-express-2008-nhibernate-and-mstest/