2016-09-18 9 views

答えて

0

最後に解決策を見つけました。 JPA/HibernateのEmbeddableのようにとてもシンプルです。

はこちらをご覧ください:https://github.com/jagregory/fluent-nhibernate/wiki/Fluent-mapping#components

は、それから私はやりました。

public class Cliente { 

     public virtual long id       { set; get; } 
     public virtual long codigo      { set; get; } 
     public virtual String nome      { set; get; } 
     public virtual String sexo      { set; get; } 
     public virtual String cpf      { set; get; } 
     public virtual String rg      { set; get; } 
     public virtual DateTime dtNascimento   { set; get; } 
     public virtual Endereco endereco    { set; get; } //Embeddable 

     public Cliente() { } 
    } 



public class Endereco { 

     public String endereco; 
     public String numero; 
     public String bairro; 
     public String complemento; 
     public String cidade; 
     public String cep; 
     public EstadosBrasil uf; 

     public Endereco() {    
     } 
    } 

マッピング

public class ClienteMap : ClassMap<Cliente> { 
     public ClienteMap() { 
      Table("CLIENTE"); 
      Id(c => c.id).GeneratedBy.Native(); 
      Map(c => c.codigo); 
      Map(c => c.nome); 
      Map(c => c.sexo).Length(2); 
      Map(c => c.cpf); 
      Map(c => c.rg); 
      Map(c => c.dtNascimento).CustomType<DateTime>(); 
      //embeddable 
      Component(c => c.endereco, e => { 
              e.Map(c => c.endereco); 
              e.Map(c => c.numero).CustomType<int>(); 
              e.Map(c => c.bairro); 
              e.Map(c => c.complemento); 
              e.Map(c => c.cidade); 
              e.Map(c => c.cep); 
              e.Map(c => c.uf).CustomType<GenericEnumMapper<EstadosBrasil>>(); 
              }); 

     } 
    } 
関連する問題