与えられた2つのテーブル:
___________
|Table1 |
|-----------|
|Id |
|___________|
___________
|Table2 |
|-----------|
|Id |
|Table1_Id |
|___________|
Table2レコードが必ずしも存在する必要がない場合(つまり、関係はOne {Table1}-to-OneOrZero {Table2}です)。
Table1にマップされている親クラスを使用して、両方のテーブルからデータを保存および取得できるようにする必要があります。
エンティティは次のとおりです。
public class Table1
{
int Id {get; set;}
Table2 Table2 {get; set;}
}
public class Table2
{
int Id {get; set;}
}
...次のようにマッピングを作成しました。
public class Table1Map
{
this.Id(x => x.Id);
HasOne(x => x.Table2).Cascade.All();
}
public class Table2Map
{
this.Id(x => x.Id);
}
...これはデータの読み取りには問題なく機能しますが、プロパティTable2.Table1_Id
から取得する代わりに列にNULLを挿入しようとするため、データの書き込みには機能しません。Table1.Id
双方向参照を作成せずに、つまりTable1
プロパティを使用せずに、挿入に対してこれを機能させる方法はありTable2 class
ますか?