quarta-feira, 4 de março de 2009

Conexão PostgreSQL no NHibernate

Este "post" é um informativo para desenvolvedores ...
Eu estava tendo uma certa dificuldade para fazer a conexão do NHibernate utilizando o Npgsql. Percebi que o exemplo da string de conexão que vem no exemplo da documentação do NHibernate não funciona =(

O exemplo que eles dão é o seguinte:
<?xml version="1.0" encoding="utf-8"?>
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2" >
<session-factory name="NHibernate.Test">
<property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>
<property name="connection.driver_class">NHibernate.Driver.NpgsqlDriver</property>
<property name="connection.connection_string">
Server=localhost;initial catalog=nhibernate;User ID=nhibernate;Password=********;
</property>
<property name="dialect">NHibernate.Dialect.PostgreSQLDialect</property>
</session-factory>
</hibernate-configuration>
Não irá funcionar pois a string de conexão possui atributos que não são suportados pelo npgsql, para funcionar eu uilizei o seguinte:
<?xml version="1.0" encoding="utf-8"?>
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2" >
<session-factory name="NHibernate.Test">
<property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>
<property name="connection.driver_class">NHibernate.Driver.NpgsqlDriver</property>
<property name="connection.connection_string">
Server=localhost;Port=5432;User Id=<usuario_conexao>;Password=<senha_conexao>;Database=<base_de_dados>
</property>
<property name="dialect">NHibernate.Dialect.PostgreSQLDialect</property>
</session-factory>
</hibernate-configuration>
O debaixo deverá funcionar, pelo menos deu certo no meu caso. Agora tenho que resolver o problema de mapeamento ...    

Abraços,

Nenhum comentário:

Postar um comentário