VS 2015中的连接字符串

对不起,如果这是一个非常简单的问题,但我发誓我已经a)盯着它看了几天,并且b)试图谷歌答案。

我正在使用Visual Studio 2015,并且我添加了一个名为Investments 4的数据库。我可以使用表适配器和数据网格连接到它并显示数据。

在程序的另一部分,我正在探索SQL命令并尝试手动打开连接,然后读取数据。 我正在尝试设置一个新的SqlConnection,我通过右键单击Server explorer中的数据库并查找给出连接字符串的属性来获取连接字符串。

但是….当我将此连接字符串粘贴到新实例命令时,VS对象因为它包含引号和反斜杠。

这是线。

SqlConnection myConnection = new SqlConnection("Data Source = (LocalDB)\MSSQLLocalDB; AttachDbFilename = "C:\Users\Nick\Documents\Investments 4.mdf"; Integrated Security = True; Connect Timeout = 30"); myConnection.Open(); 

显然,一些简单而明显的错误,但如果有人可以花几分钟时间来指导我,我会非常感激。

你只需要逃避字符串。 你可以使用@前缀这样做:

 SqlConnection myConnection = new SqlConnection(@"Data Source = (LocalDB)\MSSQLLocalDB; AttachDbFilename = ""C:\Users\Nick\Documents\Investments 4.mdf""; Integrated Security = True; Connect Timeout = 30") 

这意味着你只需要加倍实例" 。不使用@前缀,你需要使用\字符转义所有双引号,它也需要自行转义:

 SqlConnection myConnection = new SqlConnection("Data Source = (LocalDB)\\MSSQLLocalDB; AttachDbFilename = \"C:\\Users\\Nick\\Documents\\Investments 4.mdf\"; Integrated Security = True; Connect Timeout = 30") 

处理带有文件路径的字符串时 – 通常首选使用@前缀。