我試圖用NHibernate和SQL服務器實現類繼承hieararchy。我使用每個層次結構策略(映射文件中的一個表和幾個子類元素)可以很好地工作。NHibernate加入子類
但是因爲我想提出一些約束的子類表每個子類策略表(N + 1個表和一個映射文件N連接子類元素)更有意義,在我的情況。我與我應該把什麼樣的PK/FK協會對大師表(人)和子類表(ContactPersons)掙扎。根據NHibernate文檔,這些表之間應該有一個主鍵關聯。我試圖將FK約束從子類PK放到主類PK中,但它仍然不起作用。我收到以下例外情況:
NHibernate.Exceptions.GenericADOException:無法插入:[Jobflow.Models.Entities.ContactPerson] [SQL:INSERT INTO ContactPersons(Email,Company,PersonID)VALUES(?,?,?) ] ---> System.Data.SqlClient.SqlException:當IDENTITY_INSERT設置爲OFF表「ContactPersons」無法插入的標識列的顯式值。
我曾嘗試將IDENTITY爲ON,但似乎並沒有幫助...