Fluent Nhibernate return ORA-06413 连接未打开
Fluent Nhibernate return ORA-06413 Connection not open
我有一些 Web 应用程序使用 Fluent NHibernate 作为 ORM 和 ORACLE 11g 作为数据库。
下面是我的配置生成器,看起来像
return Fluently.Configure()
.Database(OracleDataClientConfiguration.Oracle10
.ConnectionString(c => c.FromConnectionStringWithKey("ora"))
.AdoNetBatchSize(100)
.Driver<NHibernate.Driver.OracleClientDriver>()
)
.Mappings(mappings => mappings.FluentMappings.AddFromAssemblyOf<UserMapping>())
//.ExposeConfiguration(ReCreateSchema)
.BuildConfiguration();
下面是我的连接字符串
<connectionStrings>
<add name="ora" connectionString="Server=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=host)(PORT=1521))(CONNECT_DATA=(SERVER = DEDICATED)(SERVICE_NAME=serviceName)));User Id=uidxx;Password=pwdxx;" />
</connectionStrings>
从配置开始,下一步就是构建会话工厂
ISessionFactory sesionFactory = config.BuildSessionFactory();
每当我 运行 应用程序时,它都会抛出代码为
的错误
ORA-06413: Connection not Open
有没有我遗漏的配置?我也在尝试研究解决方案,但一无所获。我也尝试用 OracleClientConfiguration.Oracle10
替换配置,但我得到了相同的结果。
谢谢!
经过一些研究并做了一些trial/error(叹息)
发现我必须把配置生成器改成这样
return Fluently.Configure()
.Database(OracleManagedDataClientConfiguration.Oracle10
.ConnectionString(c => c.FromConnectionStringWithKey("ora"))
.AdoNetBatchSize(100)
.Driver<NHibernate.Driver.OracleManagedDataClientDriver>()
)
.Mappings(mappings => mappings.FluentMappings.AddFromAssemblyOf<UserMapping>())
//.ExposeConfiguration(ReCreateSchema)
.BuildConfiguration();
而且在构建此应用程序之前,我还必须安装 ORACLE DATA PROVIDER for NET Framework (ODP.NET)。
我有一些 Web 应用程序使用 Fluent NHibernate 作为 ORM 和 ORACLE 11g 作为数据库。
下面是我的配置生成器,看起来像
return Fluently.Configure()
.Database(OracleDataClientConfiguration.Oracle10
.ConnectionString(c => c.FromConnectionStringWithKey("ora"))
.AdoNetBatchSize(100)
.Driver<NHibernate.Driver.OracleClientDriver>()
)
.Mappings(mappings => mappings.FluentMappings.AddFromAssemblyOf<UserMapping>())
//.ExposeConfiguration(ReCreateSchema)
.BuildConfiguration();
下面是我的连接字符串
<connectionStrings>
<add name="ora" connectionString="Server=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=host)(PORT=1521))(CONNECT_DATA=(SERVER = DEDICATED)(SERVICE_NAME=serviceName)));User Id=uidxx;Password=pwdxx;" />
</connectionStrings>
从配置开始,下一步就是构建会话工厂
ISessionFactory sesionFactory = config.BuildSessionFactory();
每当我 运行 应用程序时,它都会抛出代码为
的错误ORA-06413: Connection not Open
有没有我遗漏的配置?我也在尝试研究解决方案,但一无所获。我也尝试用 OracleClientConfiguration.Oracle10
替换配置,但我得到了相同的结果。
谢谢!
经过一些研究并做了一些trial/error(叹息) 发现我必须把配置生成器改成这样
return Fluently.Configure()
.Database(OracleManagedDataClientConfiguration.Oracle10
.ConnectionString(c => c.FromConnectionStringWithKey("ora"))
.AdoNetBatchSize(100)
.Driver<NHibernate.Driver.OracleManagedDataClientDriver>()
)
.Mappings(mappings => mappings.FluentMappings.AddFromAssemblyOf<UserMapping>())
//.ExposeConfiguration(ReCreateSchema)
.BuildConfiguration();
而且在构建此应用程序之前,我还必须安装 ORACLE DATA PROVIDER for NET Framework (ODP.NET)。