12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
ADADADADAD
编程知识 时间:2024-12-18 16:47:41
作者:文/会员上传
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
12-09
使用NHibernate连接Oracle数据库是很常见的操作,本文将介绍如何配置NHibernate连接Oracle,并提供一些运用实例。首先,在配置中需要添加一个引用Oracle的数据供应程序:<add name=
以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。
使用NHibernate连接Oracle数据库是很常见的操作,本文将介绍如何配置NHibernate连接Oracle,并提供一些运用实例。
首先,在配置中需要添加一个引用Oracle的数据供应程序:
<add name="OracleClient" invariant="System.Data.OracleClient" description=".Net Framework Data Provider for Oracle" type="System.Data.OracleClient.OracleClientFactory" />
然后,在配置文件中定义数据连接字符串。下面的代码是一个例子:
<connectionStrings><add name="Orcl" connectionString="Data Source=HOST_OR_IP:PORT/SERVICE_NAME;User ID=USER;Password=PASSWORD;Validate Connection=true;Pooling=true;" providerName="OracleClient" /></connectionStrings>其中的HOST_OR_IP、PORT、SERVICE_NAME、USER和PASSWORD需要替换为具体的值。
接下来是配置NHibernate的部分。下面的代码是配置NHibernate连接Oracle的例子:
<hibernate-configuration><session-factory><property name="connection.provider" >NHibernate.Connection.DriverConnectionProvider</property><property name="connection.driver_class">NHibernate.Driver.OracleClientDriver</property><property name="connection.connection_string">Data Source=HOST_OR_IP:PORT/SERVICE_NAME;User ID=USER;Password=PASSWORD;Validate Connection=true;Pooling=true;</property> <property name="connection.release_mode">on_close</property><property name="show_sql">false</property><property name="dialect">NHibernate.Dialect.Oracle10gDialect</property><mapping assembly="YourAssembly" /></session-factory></hibernate-configuration>
其中,connection.provider和connection.driver_class需要设置为NHibernate默认的值,而connection.connection_string需要设置为之前定义的连接字符串。dialect需设置为Oracle数据库的方言,这里使用的是NHibernate的Oracle10g方言。
此外,还应该注意Oracle数据库架构名称的区别,例如Orcl提供的HR表的完整名称是HR.EMPLOYEES,而不是EMPLOYEES。如果设置不当,可能会出现找不到表或视图的问题。
最后,例如下面的代码展示了如何通过NHibernate连接Oracle并查询数据:
ISessionFactory sessionFactory = new Configuration().Configure().BuildSessionFactory();ISession session = sessionFactory.OpenSession();IQuery query = session.CreateQuery("from Employee e where e.Department=:department").SetParameter("department", "IT");IList list = query.List();foreach (Employee employee in list){Console.WriteLine(employee.Name);}
本文介绍了如何配置NHibernate连接Oracle,并提供了一些示例。希望读者能够在实践中得到更多的经验。
11-20
11-19
11-20
11-20
11-20
11-19
11-20
11-20
11-19
11-20
11-19
11-19
11-19
11-19
11-19
11-19