Fluent Nhibernate:将一个类映射到两个相同但表名不同的表

本文关键字:两个 映射 Nhibernate 一个 Fluent | 更新日期: 2023-09-27 18:12:09

我需要将一个实体映射到两个表(表x和表y)。我不能将两个数据库表合并为一个并添加一个区分列来区分它们。

这两个表具有完全相同的结构,但是这两个表在数据库中的名称不同。

Fluent Nhibernate:将一个类映射到两个相同但表名不同的表

现在,从记忆中可以使用FNH:

public class A 
{
  public virtual Guid id;
  public virtual string name;
}
public class B : A { }

public class AMap : ClassMap<A>
{
  public AMap()
  {
    Table("Atable");
    Id(x => x.id);
    Map(x => x.name);
  }
}
public class BMap : SubclassMap<B>
{
  public BMap()
  {
    Table("Btable");
  }
}