流利的NHibernate:映射类与子类的问题 [英] Fluent NHibernate : Mapping a Class with subclass problem

查看:165
本文介绍了流利的NHibernate:映射类与子类的问题的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

<id name="ID" column="CodigoPessoa" type="Int32" unsaved-value="0">
  <generator class="identity"/>
</id>

<property column="CodigoCEP" name="CodigoCEP" type="String" />   

<joined-subclass name="Core.clsPessoaJuridica,Core" table="tblPessoaJuridica" lazy="true">
  <key column="CodigoPessoaJuridica"/>
  <property column="NomeFantasia" type="String" name="NomeFantasia" />
  <many-to-one name="TipoEmpresa" column="CodigoTipoEmpresa" class="Core.clsTipoEmpresa,Core" cascade="none"/>      
</joined-subclass>   

<joined-subclass name="Core.clsPessoaFisica,Core" table="tblPessoaFisica" lazy="true">
  <key column="CodigoPessoaFisica"/>
  <property column="Nome" type="String" name="Nome" />
</joined-subclass> 

我正尝试迁移到NH Fluent的映射...帮助?

I´m trying to migrate to NH Fluent mapping ... Help?

推荐答案

也许这将有助于

public class clsPessoaMap : ClassMap<clsPessoa>
{
    public clsPessoaMap()
    {
        Table("tblPessoa");
        Id(x => x.ID).Column("CodigoPessoa").UnsavedValue(0).GeneratedBy.Identity();
        Map(x => x.CodigoCEP);
    }

}

public class clsPessoaJuridicaMap : SubclassMap<clsPessoaJuridica>
{
    public clsPessoaJuridicaMap()
    {
        KeyColumn("CodigoPessoaJuridica");
        Map(x => x.NomeFantasia);
        References(x => x.clsTipoEmpresa).Column("CodigoTipoEmpresa");
    }
}

public class clsPessoaFisicaMap: SubclassMap<clsPessoaFisica>
{
    public clsPessoaFisicaMap()
    {
        KeyColumn("CodigoPessoaFisica");
        Map(x => x.Nome);
    }
}

这篇关于流利的NHibernate:映射类与子类的问题的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆