0
私は、FluentNHibernateでの使用方法について書かれています。 FluentNHibernateのEmbeddableで動作する方法はありますか?これをシミュレートする最良の方法はありませんか?FluentNibernateでEmbeddableを使って作業していますか?
私は、FluentNHibernateでの使用方法について書かれています。 FluentNHibernateのEmbeddableで動作する方法はありますか?これをシミュレートする最良の方法はありませんか?FluentNibernateでEmbeddableを使って作業していますか?
最後に解決策を見つけました。 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>>();
});
}
}