domingo, 30 de abril de 2017

C# - Fluent NHibernate

Fluent NHibernate
 é um poderoso framework para auxilia no processo de  mapeamentos das suas entidades com o banco de dados.

Com NHibernate é possível realizar mapeamento utilizando arquivos  xml (.hbm) para realizar o mapeamento, mas tem desvantagem, esse processo é muito trabalho, para contornar todo esse processo trabalhoso, iremos utilizar o Fluent NHibernate, com ele podemos realizar esse mapeamento pelo próprio código da classe sem precisar de usar os arquivos HBM.

HBM.XML

O arquivo hbm.xml é responsável pelo mapeamento, para que isso ocorra é necessário que sejam informados alguns itens;
* -  Nome da tabela,
* - Tamanho e Tipo de dados dos campos
* - E outras informações.

Exemplo.

<?xml version="1.0" encoding="utf-8" ?>
<hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
<class name="Pessoa, table ="
Pessoa">
<id name="Id"  >
     <generator class="native" />
</id>
<property name="Nome">

  < column ="nome" length="60"  not-null="true"/> 
</class>
</hibernate-mapping>



Exemplo com Fluent NHibernate

 public class PessoaMap : ClassMap<Pessoa>
    {
        PessoaMap()
        {
            Id(c => c.Id).GeneratedBy.Native();
            Map(c => c.Nome).Length(60).Not.Nullable();
        }
    }


Não iremos entrar em detalhes sobre mapeamento utilizando arquivo xml.hbm.

Referencias:
Mapeamento com Fluent NHibernate
Mapeamento com Fluent NHibernate utilizando herança



Nenhum comentário:

Postar um comentário