Fluent nhibernate Fluent NHIbernate忽略重写Id属性上的列名

Fluent nhibernate Fluent NHIbernate忽略重写Id属性上的列名,fluent-nhibernate,fluent-nhibernate-mapping,Fluent Nhibernate,Fluent Nhibernate Mapping,我有一个继承Sharp Arch实体类的抽象基类: /// <summary> /// defines an entity that will ne indexed by a search crawler and offered up as full-text searchable /// </summary> public abstract class IndexedEntity : Entity { [DocumentId] pub

我有一个继承Sharp Arch实体类的抽象基类:

  /// <summary>
  /// defines an entity that will ne indexed by a search crawler and offered up as full-text searchable
  /// </summary>
  public abstract class IndexedEntity : Entity
  {
    [DocumentId]
    public override int Id
    {
      get { return base.Id; }
      protected set { base.Id = value; }
    }
  }
当我简单地继承实体时,生成的用于查询帮助页的sql工作正常。但是继承IndexedEntity时,当转换为sql时,将忽略列名覆盖,而将Id用于列,因此失败

编辑
覆盖似乎是一个普遍的问题,因为将覆盖直接放置在类中具有相同的净效果

映射覆盖仅对确切的类型执行,而不是对mappingoverride中类型的子类执行。您必须为子类指定重写。

您使用的是哪种继承策略?TPH?你是说超类?在这种情况下,FNH将在TPH场景中忽略它,因为据我理解和经验,它是抽象的
mapping.Id(x => x.Id, "HelpPageID");