Usuário com melhor resposta
NHibernate + SQL SERVER 2005 EXPRESS EDITION

Pergunta
-
Olá.
Estou tentando acessar o SQL SERVER 2005 EXPRESS EDITION com NHibernate, mas não sei como o App.config deve ser. Em um exemplo o App.config connecta no SQL SERVER 2000. Alguém sabe como o App.config deve estar para conectar no SQL SERVER 2005 EXPRESS EDITION?
Outra pergunta...
Como eu posso configurar a string de conexão através do código e não através do App.config?
Obrigado.
Thiago Tota.
Respostas
-
Thiago...
A string de conexão não muda nada do SQL2K e SQL2K5.
Quanto ao hibernate, sugiro comprar/consultar a SQL Magazine que bem com uma matéria bem dentro disso que vc que usar, SQLServer 2005 e Hibernate (se não estou enganado)!
[ ]'s
Guga
Todas as Respostas
-
Thiago...
A string de conexão não muda nada do SQL2K e SQL2K5.
Quanto ao hibernate, sugiro comprar/consultar a SQL Magazine que bem com uma matéria bem dentro disso que vc que usar, SQLServer 2005 e Hibernate (se não estou enganado)!
[ ]'s
Guga -
Ba... tambem estou com a mesma dificuldade e não encontro solução para a mesma... na minha web.confing tenho o seguinte codigo:
<configSections>
<section name="nhibernate" type="System.Configuration.NameValueSectionHandler, System, Version=1.0.5000.0,Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
<section name="log4net" type="log4net.Config.Log4NetConfigurationSectionHandler,log4net"/>
</configSections>
<nhibernate>
<add key="hibernate.show_sql" value="true"/>
<add key="hibernate.connection.provider" value="NHibernate.Connection.DriverConnectionProvider"/>
<add key="hibernate.dialect" value="NHibernate.Dialect.MsSql2000Dialect"/>
<add key="hibernate.connection.driver_class" value="NHibernate.Driver.SqlClientDriver"/>
<add key="hibernate.connection.connection_string" value="caminho do banco";Integrated Security=True;User Instance=True"/>
</nhibernate>
o que poderia mudae entre o SQL SERVER 2005 e SQL SERVER 2000 seria o dialect , porem não enconto nada do genero na net.
OBS: está configuração funcionou para o SQL SERVER 2000 -
Olá Saraiva. Depois de muito bater cabeça e ler o manual do NHibernate praticamente inteiro descobri algmas coisa.
Quanto a sua pergunta sobre o Dialect, a resposta é não! O Dialect serve apenas para qando se utiliza comando SQL específos de determinados bancos, como JOINS, etc. Se você só usar comando SQL padrão (SELECT, DELETE, INSERT e UPDATE) o dialect não importa, podendo então por exemplo usar o dialect do SQL SERVER para conectar no Oracle. O que pode estar acontecendo é algum erro no arquivo Web.config. Sei que da forma que vc fez é como está na própria documentação do NHibernate, porém eu fiz de forma direfente meu arquivo. Segue o mesmo abaixo:
<?
xml version="1.0" encoding="utf-8" ?><
configuration><
<
section name="nhibernate"System, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
" /></
configSections><
nhibernate><
/>
<
add key="hibernate.dialect" value="NHibernate.Dialect.MsSql2000Dialect"/>
<
add key="hibernate.connection.driver_class" value="NHibernate.Driver.SqlClientDriver"/>
<
add key="hibernate.connection.connection_string" value="Server=.\SQLEXPRESS;Database=DB1;User ID=sa;Password=123456"/>
</
nhibernate></
configuration>Uma coisa que na docmentação não diz e que sem ela não funcionou foi selecionar o arquivo .hbm.xml que refere-se a classe e na propriedade Build Action selecionar o valor Embedded Resource. Só após fazer isso minha aplicação funcionou. Com essas configurações conectei e realizei transações sem problemas no SQL 2005 Express Edition.
Qualquer problema é só postar.
Se este post foi útil marque-o como.
-
-
-
-
Gustavo Ott wrote: Thiago...
sugiro comprar/consultar a SQL Magazine que bem com uma matéria bem dentro disso que vc que usar
Guga
Mandar comprar um número aleatório da SQL Magazine não me parece ser uma resposta lógica...
Ao menos o link para o site da revista com o artigo a que se faz referência.