Fluent NHibernate:每个类的表-继承,如何定义其他FK名称
本文关键字:何定义 定义 名称 FK 其他 继承 NHibernate Fluent | 更新日期: 2023-09-27 18:20:59
这里有父类和子类的映射:
public class Parent
{
public virtual int ParentId { get; set; }
public virtual string ParentName{ get; set; }
}
public class Child : Parent
{
public virtual string ChildName{ get; set; }
}
映射:
public class ParentMap: ClassMap<Parent>
{
public ParentMap()
{
Id(x => x.ParentId ).GeneratedBy.Identity();
Map(x => x.ParentName);
}
}
public class ChildMap : SubclassMap<Child>
{
public ChildMap ()
{
Map(x => x.ChildName);
}
}
现在我遇到了一个问题,即Id列的名称与约定预期的名称不同。约定希望联接使用Parent_id
,但我希望定义一个自定义名称。如何定义自定义名称
任何倾翻的Thx
附言:既然这个案子是个例外,我不想创建一个自己的惯例。
啊,想通了:
public class ChildMap : SubclassMap<Child>
{
public ChildMap ()
{
KeyColumn("ParentId")
Map(x => x.ChildName);
}
}