在 ASP.NET MVC 4 NHibernate 应用程序中使用 SessionFactory 获取连接
Posted
技术标签:
【中文标题】在 ASP.NET MVC 4 NHibernate 应用程序中使用 SessionFactory 获取连接【英文标题】:Get connection using SessionFactory in ASP.NET MVC 4 NHibernate application 【发布时间】:2014-08-01 10:20:04 【问题描述】:我使用NHibernate.dll
(版本1.2.0.4000)创建了我的 ASP.NET MVC 4 应用程序。
我之前使用的获取SqlConnection
的代码如下:
SqlConnection connection = m_SessionFactory.ConnectionProvider.GetConnection() as SqlConnection;
在我将 NHibernate
版本更新为 3.3.1.4000 后,现在遇到错误:
“NHibernate.ISessionFactory”不包含“ConnectionProvider”的定义,并且找不到接受“NHibernate.ISessionFactory”类型的第一个参数的扩展方法“ConnectionProvider”(您是否缺少 using 指令或程序集引用? )
请提出答案!
【问题讨论】:
【参考方案1】:如果你真的需要它,你可以将你的 ISessionFactory
转换为它的 NHibernate 实现:
var factory = m_SessionFactory as NHibernate.Impl.SessionFactoryImpl;
var connection = factory.ConnectionProvider.GetConnection() as SqlConnection;
【讨论】:
很高兴看到这一点 ;) 享受 NHibernate,令人惊叹的工具 ;)以上是关于在 ASP.NET MVC 4 NHibernate 应用程序中使用 SessionFactory 获取连接的主要内容,如果未能解决你的问题,请参考以下文章