Qual a melhor maneira de realizar mapeamento com Nhibernate?

77 views
Skip to first unread message

fopprado

unread,
Feb 4, 2015, 1:10:05 PM2/4/15
to nhiber...@googlegroups.com
Desculpe esta pergunta leiga, mas estou iniciando com NHibernate. 
Como iniciante achei mais simples o Fluent em relação aos arquivos xml, mas pelo que pesquisei o Fluent está descontinuado. 
Tem algum tipo de mapeamento parecido com o Fluent e com exemplos? Ou dá para continuar usando o Fluent?

vitor rubio

unread,
Feb 4, 2015, 1:15:37 PM2/4/15
to nhibernate-br

Desde a versão 3 o nh vem com o map by code, uma espécie de fluent embutido.  É meio diferente do fluent e pouco documentado. Procure um blog chamado anotherdev, lá tem a melhor documentação do map by code que eu ja vi, com exemplos e comparativos entre ele o fluent e o xml. É uma série de 20 posts.

--
Você recebeu essa mensagem porque está inscrito no grupo "NHibernate-Br" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para nhibernate-b...@googlegroups.com.
Para postar nesse grupo, envie um e-mail para nhiber...@googlegroups.com.
Acesse esse grupo em http://groups.google.com/group/nhibernate-br.
Para mais opções, acesse https://groups.google.com/d/optout.

Henrylle Gmail

unread,
Feb 4, 2015, 1:18:41 PM2/4/15
to nhiber...@googlegroups.com

Vai para o EF.

--

fopprado

unread,
Feb 4, 2015, 1:52:36 PM2/4/15
to nhiber...@googlegroups.com
O problema do EF é que ele é simples para o SQL Server, para os demais bancos é tudo mais complexo.

fopprado

unread,
Feb 4, 2015, 1:53:06 PM2/4/15
to nhiber...@googlegroups.com
Mas ainda dá para usar o Fluent?


Em quarta-feira, 4 de fevereiro de 2015 16:10:05 UTC-2, fopprado escreveu:

Edno Silva

unread,
Feb 4, 2015, 2:28:35 PM2/4/15
to nhiber...@googlegroups.com
Claro que dá. O pessoal que mantém o Fluent ainda libera versões novas, mas elas basicamente só corrigem bugs ou são versões compiladas para compatibilidade com as versões novas do NHibernate. A versão 2.0.1 do Fluent saiu há pouco tempo, e é compatível com NHibernate 4.0.

--
Você recebeu essa mensagem porque está inscrito no grupo "NHibernate-Br" dos Grupos do Google.
Para cancelar inscrição nesse grupo e parar de receber e-mails dele, envie um e-mail para nhibernate-b...@googlegroups.com.
Para postar nesse grupo, envie um e-mail para nhiber...@googlegroups.com.
Acesse esse grupo em http://groups.google.com/group/nhibernate-br.
Para mais opções, acesse https://groups.google.com/d/optout.



--
Sem mais,
Edno.

Fernando

unread,
Feb 4, 2015, 2:31:01 PM2/4/15
to nhiber...@googlegroups.com
Teria algum motivo em especial pro pessoal do nhibernate não liberar uma documentação decente igual do Fluent?

O problema de usar o Fluent, no meu ponto de vista, é somente ser liberadas novas versões com correções de bugs.. Novas funcionalidades, nem pensar.

[]s

João Paulo Rezende da Silva

unread,
Feb 4, 2015, 2:57:00 PM2/4/15
to nhiber...@googlegroups.com
Recomendo o NHibernate, mais tempo de casa no mundo ORM para plataforma .Net.
Estou usando mapping by code em um projeto e amando. Muito bacana...

Abraços

vitor rubio

unread,
Feb 4, 2015, 3:12:48 PM2/4/15
to nhibernate-br

Eu também estou usando map by code e achando uma maravilha.  E tem um monte de features que eu n v ainda.

Não tem muito o que o fluent evoluir também.  O sistema de mapeamento só faz isso:  mapeia. A grosso modo é  como uma tabela de - para.  Tem recursos para automatizar certas partes do mapeamento mas não passam de definições de convenções de nomenclatura sufixos prefixos etc. Uma fez que a ferramenta já faça tudo isso não tem muito pra onde ir.

Agora uma dica que eu te dou.  Se o banco de dados não for seu, já estiver pronto de outra aplicação legada e for mssql server use o EF.
É  mais fácil nesses casos de model first. Principalmente se a base for só para consulta. 

O nh é meu preferido mas ele tem certas coisinhas que vão fazer você perder um tempo googlando.

Fabiano de Oliveira Prado

unread,
Feb 4, 2015, 3:19:15 PM2/4/15
to nhiber...@googlegroups.com
Tem material bom sobre map by code?
Atenciosamente,

Fabiano.

A humildade é o sucesso dos fortes.

Ricardo Borges

unread,
Feb 5, 2015, 10:27:27 PM2/5/15
to nhibernate-br

vitor rubio

unread,
Feb 6, 2015, 2:55:05 AM2/6/15
to nhibernate-br

Esse é o blog que eu falei.  O melhor material disponível sobre map by code.

Felipe Oriani

unread,
Feb 6, 2015, 6:15:00 AM2/6/15
to nhiber...@googlegroups.com
Utilizo o Fluent NHibernate e me atende bem!
______________________________________
Felipe B Oriani

Bruno D'Alessio

unread,
Feb 6, 2015, 10:57:25 AM2/6/15
to nhiber...@googlegroups.com
Mapping by code 
O Extract Method é seu amigo!

"Vocês riem de mim por ser diferente, eu rio de vocês por serem todos iguais..." (Bob Marley)

Bruno D'Alessio
Arquiteto de Software
(21) 99441-1214
GTALK: bruno...@gmail.com
SKYPE: brun...@hotmail.com (bcdalessio)

Renato Cantarino

unread,
Feb 6, 2015, 11:08:44 AM2/6/15
to nhiber...@googlegroups.com
Fluent.


Att,
Renato Cantarino

Bruno D'Alessio

unread,
Feb 6, 2015, 11:09:48 AM2/6/15
to nhiber...@googlegroups.com

Xml

Edno Silva

unread,
Feb 6, 2015, 11:10:56 AM2/6/15
to nhiber...@googlegroups.com
Fluent.

Renato Cantarino

unread,
Feb 6, 2015, 11:11:16 AM2/6/15
to nhiber...@googlegroups.com
eu acho custoso trabalhar com o xml.
será q e mais performático que o fluent?

Bruno D'Alessio

unread,
Feb 6, 2015, 11:14:28 AM2/6/15
to nhiber...@googlegroups.com

Acho que não, mas vou pesquisar

vitor rubio

unread,
Feb 6, 2015, 1:24:16 PM2/6/15
to nhibernate-br

O xml é traduzido para um mapa em memória.  O fluent é traduzido para o formato xml em memória que depois é convertido para o mapa que eu citei anteriormente.

O map by code escreve direto no mapa de memória.  Sem leitura de resources ou de arquivos.

No entanto a performance do mecanismo de mapeamento influencia apenas no momento de criação do sessionfactory que acontece uma única vez na execução da aplicação.

Renato Cantarino

unread,
Feb 6, 2015, 1:28:06 PM2/6/15
to nhiber...@googlegroups.com
Singleton.
Reply all
Reply to author
Forward
0 new messages