代码之家  ›  专栏  ›  技术社区  ›  Samnang

我们可以用fluent nhibernate自定义主键列的名称吗?

  •  1
  • Samnang  · 技术社区  · 16 年前

    当我在流利的NHibernate工作时,我真的很惊讶。我得到的具有主键列名的旧数据库与域模型中的属性不同。我确信我可以使用这个映射文件:

    <class name="Person">
      <id name="Id" column="CommentId">
          <generator class="native"/>
      </id>
      <property name="Description" type="String" />
    </class>
    

    但是我如何在流畅的NHibernate映射中真正得到这个映射呢?

    1 回复  |  直到 16 年前
        1
  •  1
  •   Erik Öjebo    16 年前

    以下Fluent NHibernate映射:

    public class PersonMap : ClassMap<Person>
    {
        public PersonMap()
        {
            Id(x => x.Id, "CommentId")
                .GeneratedBy.Native();
    
            Map(x => x.Description);
        }
    }
    

    生成此XML映射:

      <class name="Person" table="[Person]" xmlns="urn:nhibernate-mapping-2.2">
        <id name="Id" column="CommentId" type="Int32">
          <generator class="native" />
        </id>
        <property name="Description" column="Description" length="100" type="String">
          <column name="Description" />
        </property>
      </class>