O NHibernate dá suporte ao uso de Stored Procedures, e apesar de essa ser uma questão até um pouco contraditória para um ORM, é possível adaptar o NHibernate para realizar praticamente todos os comandos SQL através de Stored procedures.

O segredo do uso de Stored Procedures no NHibernate está nos seus arquivos de mapeamento. São neles que podemos configurar o acesso às SPs. Vamos considerar a existência de uma entidade simples, chamada Cidade, contendo apenas as propriedades Id, Nome e UF (Listagem 1).

Listagem 1. Entidade Cidade

public class Cidade
  {
  public virtual int Id { get; set; }
         public virtual string Nome { get; set; }
         public virtual string Uf { get; set; }
  }

Para essa entidade temos um arquivo de mapeamento do NHibernate, também muito simples, que você encontra aqui na Listagem 2.

Listagem 2. Mapeamento da Cidade

<?xml version="1.0" encoding="utf-8" ?>
  <hibernate-mapping xmlns="urn:nhibernate-mapping-2.2">
         <class name="Cidade">             
  <id name="Id" type="Int32" />    
               <property name="Nome" type="string" length="50" not-null="true" />
               <property name="Uf"   type="string" length="2"  not-null="true" />        
         </class>
  </hibernate-mapping> ... 

Fim do trecho gratuito • continue abaixo
CONTEÚDO EXCLUSIVO

Desbloqueie toda a DevMedia

  • +2000 artigos e vídeos
  • +40 trilhas sobre Front-end, Back-end, IA e muito mais
  • +5000 exercícios práticos
  • Mentorias ao vivo individuais
30% OFF
A partir de
R$ 47,00 /mês
Assinar agora