app.Config中的ConnectionString不起作用

hi *_*sme 4 c# sql connection-string

在我的winform项目中,我有一个连接到SQL的连接字符串.我在app.config文件中有这样的连接;

 <connectionStrings>
  <add name="MyConnectionString" providerName="System.Data.SqlClient"
        connectionString="Server=(localdb)\\v11.0; Integrated Security=true; AttachDbFileName=C:\\Folder\\mydataBaseName.mdf;Connect Timeout=15;Encrypt=False;TrustServerCertificate=False" 
   />
Run Code Online (Sandbox Code Playgroud)

我得到了连接:

string config = ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString;
//and then
 using (SqlConnection conexao = new SqlConnection(config))
        {
            conexao.Open();
         .......
         .......
        }
Run Code Online (Sandbox Code Playgroud)

当我运行应用程序时,我收到一条错误消息:"System.Data.dll中发生了'System.Data.SqlClient.SqlException'类型的未处理异常"

但是,如果我直接从代码中调用连接字符串(不使用app.config),那么就可以了.

string config = "Server=(localdb)\\v11.0; Integrated Security=true; AttachDbFileName=C:\\Folder\\mydataBaseName.mdf;Connect Timeout=15;Encrypt=False;TrustServerCertificate=False";
Run Code Online (Sandbox Code Playgroud)

任何想法,如何解决问题?

谢谢Leonor

小智 8

在C#非逐字字符串文字中,\\如果要在字符串中包含单个反斜杠字符,则使用此字符串.

在其他文件中,反斜杠不一定是特殊字符.在Web.config连接字符串中,您可以直接包含反斜杠,而不会加倍.

或者,换句话说,一个连接字符串工作而另一个连接字符串不工作的原因是因为您确实有两个不同的连接字符串.