Customizando o NHibernate - Revista .NET Magazine 103

Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Para efetuar o download você precisa estar logado. Clique aqui para efetuar o login
Confirmar voto
0
 (0)  (0)

O NHibernate possui dezenas de dialetos já implementados mas sempre pode ocorrer de termos uma necessidade que ainda não foi implementada ou que precise de um ajuste e neste artigo vamos fazer isso, através da implementação de um dialeto.

Artigo do tipo Tutorial
Recursos especiais neste artigo:
Conteúdo sobre boas práticas, Artigo no estilo mentoring.

Cenário
Por mais que o NHibernate nos forneça suporte a diversas bases e suas mais variadas funções através de sua estrutura de drivers e dialetos, alguma vezes pode ser interessante implementarmos nós mesmos um dialeto customizado. Por exemplo, um projeto legado, que possui uma série de funções na base de dados e está passando por uma refatoração em sua arquitetura. Pode ser que não seja viável migrar todas estas funções para a lógica da aplicação, fazendo com que a aplicação continue a chamar estas funções na base dados, porém, através do NHibernate. Em um primeiro momento a solução seria executar SQLs nativos diretamente pelo NHibernate, visto que o mesmo não reconheceria as funções customizadas pelo usuário eu seus códigos HQL ou em suas criterias. Porém, como alternativa a isto termos a possibilidade de fazer com que o NHibernate entenda estas funções, através da criação de um dialeto customizado.


Em que situação o tema é útil
Este tema é útil nas situações onde se torna necessária a implementação de um dialeto customizado de funções do NHibernate, podendo ser aplicado a projetos legados, que possuem uma vasta gama de bibliotecas e rotinas no banco de dados ou para atender uma atualização recente em um SGDB que ainda não tenha sido compatibilizado com o NHibernate.

Apesar do NHibernate ter diversos dialetos para várias versões de diversos SGDBs, o mesmo nos permite estender estes dialetos, ou até mesmo criar dialetos completamente novos. Estes dialetos customizados podem ser necessários em dois cenários principais:

"

A exibição deste artigo foi interrompida :(
Este post está disponível para assinantes MVP

 
Você precisa estar logado para dar um feedback. Clique aqui para efetuar o login
Receba nossas novidades
Ficou com alguma dúvida?