これらのテーブルが Oracle データベースにあるとします。
Person:
PersonId <- PK ID (int、シーケンスから)
PersonFirstNameID <-- int
PersonLastNameID <-- int
PersonSecurityID <-- int
PersonDetails
PersonFirstNameID -CompositeKey
PersonLastNameID -CompositeKey
PersonSecurityID
-CompositeKey PersonDetailKey
PersonDetailValue
PersonDetailRisk
ここで、NHibernate で Person から PersonDetails への 1 対多の関係をモデル化したいと考えています。
これどうやってするの?複合 Id を表すコンポーネントを設定し、これをプロパティ ref を介して 1 対多に供給しようとしましたが、これにより列が重複する SQL が生成され、次がスローされます: System.ArgumentException: Identifier type mismatch; 見つかった: 予想:
NHibernate のドキュメントでは、複合 ID が両方で同じ場合にのみこれを行うことについて説明しています。
はい...私のDBスキーマではなく、レガシーDBであり、アクセスは非常に制限されています。