web.config反斜杠出现两次Visual Studio 2010

时间:2011-09-27 14:33:11

标签: c# asp.net xml visual-studio-2010

我有一个我在Visual Studio 2008中创建的asp.net Web应用程序。一切正常,直到我切换到VS 2010.当发生这种情况时,我开始看到我的数据库连接字符串有些奇怪的行为。字符串(已编辑但格式相同)如下:

<add name="DBname" connectionString="Data Source=SomeText\SomeMoreText;Initial Catalog=DB;Integrated Security=True" providerName="System.Data.SqlClient"/>

问题在于SomeText \ SomeMoreText部分 当我在调试器中运行它时,'\'将变为'\\'。这打破了一切。

我的问题,可能有一个非常简单的答案是: 如何在不尝试插入额外斜杠的情况下让VS2010像普通字符串一样处理连接字符串?

1 个答案:

答案 0 :(得分:6)

就字符串的解释而言,额外的斜杠不存在。它只是斜杠'\'之前的转义字符'\'。

想要证明吗?将以下内容添加到您的代码中(当然正确命名):

Debug.WriteLine(connectionStringValueHere);

这是一个小应用程序:

        string test = "This\\is\\a\\test";

        Console.WriteLine(test);
        Debug.WriteLine(test);

        Console.Read();

请注意,控制台和调试(输出窗口)中的字符串是This \ is \ a \ test。如果在代码处于断点时在立即窗口中执行以下操作:

 ? test

您会看到以下输出

? test
"This\\is\\a\\test"

但是你有转义存在,这对于.NET中的字符串来说是正常的。