SQL Server Express的2008连接字符串在web.config中失踪(SQL Ser

2019-10-17 04:32发布

我有一个asp.net应用程序我的机器上运行(Windows 7旗舰版,IIS 7.5和Visual Studio 2010专业版)。 我也有安装过程中的SQL Server Express 2008的安装与VS 2010专业版的SQL Server 2008 R2。

我跑了ASP.NET配置向导,创建了一些用户和卷我的应用程序。 其结果是一个ASPNETDB.MDF数据库文件在App_Data文件夹中创建。

我现在面临的问题是,对于上述SQL Server Express数据库连接字符串中我的应用程序的web.config中缺少的是对会员的元素。

但我的应用程序运行良好。 我可以登录,注销等罗尔斯也按预期工作。

(我也想指出的是,我的应用程序还可以访问我的本地机器上的SQL Server 2008 R2上的数据库,它也可以做生产服务器上的相同。)

我上传了我的应用到生产服务器,创建会员数据库有(SQL Server 2008中),在等传输的数据。 然后,我添加了在web.config文件中的SQL Server数据库的连接字符串。 但是,如果我尝试登录我无法连接到SQL Server。 该错误是如下:在建立SQL Server的连接时发生网络相关的或特定于实例的错误。 服务器未找到或无法访问。 验证实例名称是否正确,以及SQL Server配置为允许远程连接。 (提供者:SQL网络接口,错误:26 - 错误定位服务器/实例指定)

说明:在当前Web请求的执行过程中发生未处理的异常。 请检查堆栈跟踪有关该错误它起源于代码的详细信息和。

异常详细信息:System.Data.SqlClient.SqlException:在与SQL Server建立连接时出现与网络相关的或特定于实例的错误。 服务器未找到或无法访问。 验证实例名称是否正确,以及SQL Server配置为允许远程连接。 (提供者:SQL网络接口,错误:26 - 错误定位服务器/实例指定)。

我认为(虽然我不知道),我的应用程序试图访问远程主机上的SQL Server Express。 这是因为连接字符串某处有嵌入其中。

如果我说清楚了,然后我的问题是:如何配置连接字符串或哪里找呢? 因为它是不是有在web.config中。

我是新来ASP.NET和SQL Server。 任何帮助将得到高度赞赏。 谢谢。

下面是在web.config

<configuration>
<connectionStrings>
<add name="somename" connectionString="Data Source=remotehost;Initial Catalog=remotedb;User Id=username;Password=password"providerName="System.Data.SqlClient" />
</connectionStrings>
<system.web>
<customErrors mode="Off"></customErrors>
<roleManager enabled="true" />
<authentication mode="Forms" />
<compilation debug="true" strict="false" explicit="true" targetFramework="4.0" />
</system.web>
</configuration>

这是所有有给它我的web.config。

连接字符串以上是由我远程服务器添加。

Answer 1:

我已经找到了答案,我的问题。 对于ASPDBNET.MDF连接字符串通常不会出现在web.config中,如果你从头开始创建自己的网站(在我的情况)。

该应用程序使用在machine.config文件中定义的机宽连接字符串。 这个被命名为“LocalSqlServer”这个。

通常这LocalSqlServer连接字符串,在默认情况下针对一个本地SQL Server Express。

因此,它没有它采用了完全成熟的SQL Server的远程主机上。

要上传您的网站到远程服务器,在你的web.config一些调整都需要指向新的服务器通常是一个SQL Server。

要做到这一点新的连接字符串添加到您的web.config文件和LocalSqlServer命名。 除了名称添加其他一切正常,如数据源,初始目录等等。

为了使远程主机上的工作刚刚开幕的ConnectionStrings元素之前添加一个明确的元素。 这是你的连接字符串应该是什么样子的远程SQL Server。

<connectionStrings>
    <clear/>
    <add name="LocalSqlServer" connectionString="Data Source=remotehost;Initial Catalog=remoteDB;User Id=username;Password=password" providerName="System.Data.SqlClient" />
</connectionStrings>

就大功告成了。 这是我为我从头开始创建我的ASP.NET网站来完成。 现在,它的成员登录,注销,用户和轧辊等完美地工作。

谢谢阅读。



文章来源: SQL Server Express 2008 connection string missing in web.config