当我用
打开会话时 var session = factory.OpenSession();
并检查session.Connection.State是否为Open。 “Connection”的类型为SqlConnection。 这意味着通过创建会话,连接会自动打开,我认为NH并非如此。在NH确定冲洗的最佳时间之前,这不应该关闭吗?我做错了什么?
hibernate.cfg.xml:
<hibernate-configuration xmlns="urn:nhibernate-configuration-2.2">
<session-factory>
<property name="connection.provider">NHibernate.Connection.DriverConnectionProvider</property>
<property name="dialect">NHibernate.Dialect.MsSql2005Dialect</property>
<property name="connection.driver_class">NHibernate.Driver.SqlClientDriver</property>
<property name="connection.connection_string">Data Source=.\SQLEXPRESS;Initial Catalog=Test; Integrated Security=SSPI</property>
<property name='proxyfactory.factory_class'>NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle</property>
</session-factory>
</hibernate-configuration>
答案 0 :(得分:2)
不,实际发生的是当你第一次说session.Connection
时NHibernate 创建并打开连接(如果会话当然没有连接)