[英]NHibernate: Using a discriminator column as a many-to-one relationship
我有兩個要映射的表。 Table1通過FK fk_table2_id與Table2具有多對一關系。
在table1的映射中,我還定義了一個鑒別器和一個子類,如下所示:
<class name="MyAssembly.MyClass1, MyAssembly" table="table1" discriminator-value="null">
<discriminator column="fk_table2_id" type="int"/>
<many-to-one name="Category" class="MyAssembly.MyClass2, MyAssembly" column="fk_table2_id"/>
<subclass name="MyAssembly.MyDerivedClass1, MyAssembly" discriminator-value="1"/>
嘗試保存MyClass1 / MyClass2時,出現以下錯誤:
SetUp : System.ArgumentOutOfRangeException : Index was out of range. Must be non-negative and less than the size of the collection.
參數名稱:索引
現在,我很確定這與我在區分符和關系中都使用一列這一事實有關。 這真的是一個限制嗎? 我該如何解決?
我認為我有解決方法,以防其他人需要它:
<discriminator type="int" formula="fk_table2_id"/>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.