我使用的是带有MySQL的NHibernate 3.0作为数据库。在我的本地主机上,我可以连接到数据库并做任何我想做的事情。但是,每当我将文件上传到生产服务器时,我都会收到一个错误,指出:
建立与SQL Server的连接时出现与网络相关的错误或特定于实例的错误。找不到服务器或无法访问服务器。请验证实例名称是否正确,以及SQL Server是否配置为允许远程连接。(提供程序: SQL网络接口,错误: 26 -定位指定的服务器/实例时出错)
web.config文件包含以下部分:
<hibernate-configuration xmlns="urn:nhibernate-configuration">
<session-factory >
<property name="connection.provider" specificversion="false">NHibernate.Connection.DriverConnectionProvider</property>
<property name="connection.driver_class" specificversion="false">NHibernate.Driver.MySqlDataDriver</property>
<!--<property name="connection.connection_string" specificversion="false">
Data Source=localhost;Port=3306;Database=sampledb;Uid=myuser;Pwd=mypass
DSN=mydsn;UID=myuser;PWD==mypass
</property>-->
<property name="connection.connection_string">
Server=localhost;Database=sampledb;User ID=myuser;Password=mypass;
</property>
<property name="proxyfactory.factory_class" specificversion="false">NHibernate.ByteCode.Castle.ProxyFactoryFactory, NHibernate.ByteCode.Castle</property>
<property name="dialect" specificversion="false">NHibernate.Dialect.MySQLDialect</property>
<property name="hbm2ddl.keywords" specificversion="false">none</property>
<mapping assembly="App_Code.NHibernateHelpers" />
</session-factory>
</hibernate-configuration>我甚至尝试了上面注释部分中的连接字符串,但似乎没有什么东西能在我的本地机器上work...yet所有这些工作。有人能告诉我我可能遗漏了什么吗?我的生产服务器是一台运行.NET 2.x和MySQL连接器5.0.9的Windows2003服务器。
谢谢。
发布于 2011-02-21 22:57:34
仔细检查是否使用了正确的web.config。在您的错误中提到的SQL Server是MS SqlServer而不是mysql。
你忘了把这个加到你的web.config里了吗?
<configSections>
<section name="hibernate-configuration"
type="NHibernate.Cfg.ConfigurationSectionHandler, NHibernate" />
</configSections>https://stackoverflow.com/questions/5067126
复制相似问题