我有一个非常基本的ASP.NET Web应用程序,它连接到SQL Server数据库(我正在使用SQL Server 2008 Express)。我遇到的问题很奇怪:如果我直接在代码中设置SqlConnection
对象的连接字符串,应用程序工作正常,但如果我将连接字符串移动到web.config
文件,申请失败。
我在web.config
向您展示变量和连接部分,看看您是否发现任何错误:
在变量中:
// works fine
string cs = "data source=.; database=myDataBase; integrated security=SSPI";
SqlConnection conn = new SqlConnection(cs);
现在在web.config
:
<configuration>
<connectionStrings>
<add name="myCS"
connectionString="data source=.; database=myDataBase; integrated security=SSPI"
providerName="System.Data.SqlClient" />
</connectionStrings>
...
// Now, if I do this in C#, it does not work:
string cs = ConfigurationManager.ConnectionStrings["myCS"].ConnectionString;
SqlConnection conn = new SqlConnection(cs);
它告诉我已经有一个具有该名称的数据库。现在,我到处都读过的东西。有人说,而不是使用&#34;数据库&#34;在connectionString中,我可以使用&#34;初始目录&#34;一切都会好的。嗯,这不是很好......我有同样的问题......有谁知道我做错了什么?为什么在一个地方而不是另一个地方工作?如果连接字符串错误,它在两个地方都会失败,并且它只会在webConfig文件中崩溃...非常感谢......
答案 0 :(得分:-1)
如果从Visual Studio运行此功能,您是否尝试停止开发服务器(在系统托盘中运行)并尝试? Web.config文件通常是缓存的,可能会导致问题。