给定两个表:
___________
|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);
}
...这适用于读取但不写入数据,因为它尝试将 NULL 插入Table2.Table1_Id
列而不是从Table1.Id
属性中获取。
有没有办法让插入工作而不必创建双向引用,即没有Table1
属性 on Table2 class
?