抽象基本クラスのマッピングから具象の共用サブクラスへの多対1の関係のマッピングに問題があります。例:抽象基底クラスから共用サブクラスへのNHibernateの多対1の関係のマッピング
ここからわかるように、私はすべてのデータベースオブジェクトの基本抽象クラスを持っています。これらのクラスを、抽象マッピングクラスとしてのEntityクラスと、共用サブクラスとしてのUserとマッピングしています。設定オブジェクトを作成するとき、エラーはスローされず、スキーマは正常にエクスポートされます。ただし、OwnerUserへのフィールドは、すべての具象クラスのデータベースには表示されません。ここでは、マッピングの様子の例を示します。
<class entity-name="Entity" name="Entity" abstract="true">
<id name="ID" type="guid">
<generator class="guid.comb"/>
</id>
<property name="Name" />
<many-to-one name="OwnerUser" column="ID" entity-name="User" />
</class>
<union-subclass name="User" entity-name="User" extends="Entity">
<property name="UserName" />
</union-subclass>
また、データベースのバックエンドとしてOracle XEインスタンスも使用しています。これが質問に正しく答えるのに十分な情報でない場合は、私に知らせてください。私ができることを追加します。
最悪のシナリオすべての具体的なオブジェクトに多対1の関係を明示的に追加するだけですが、これは最も洗練された解決策ではありません。私はさまざまなインターネットを動かすチューブでこれの具体的な例を見つけることができませんでしたし、何かを見逃していたかもしれないが、これが無効なユースケースであることをドキュメンテーションに明示していませんでした。これは初めてではありませんでした。 -/
この質問に対する回答は非常に高く評価されています。あなたの時間をありがとう。