如何在同一个C#字符串赋值中使用@符号和字符串变量?

时间:2012-09-25 11:56:22

标签: c# string literals

到目前为止,我一直在使用以下连接字符串:

public static String connectionString = @"Data Source=.\SQLEXPRESS;AttachDbFilename=C:\Users\Ahmad\documents\visual studio 2010\Projects\DBtestApp1\DBtestApp1\TestDB.mdf;Integrated Security=True;Connect Timeout=30;User Instance=True";

但是,由于MDF文件与运行自身的EXE位于同一目录中,并且由于此目录可以更改,因此我现在要使用Directory.GetCurrentDirectory()检索当前目录。

问题是,这样的字符串赋值不起作用:

connectionString = "Data Source=.\\SQLEXPRESS;AttachDbFilename=\"" + currentDirectory + "TestDB.mdf\";Integrated Security=True;Connect Timeout=30;User Instance=True";

其中currentDirectory包含Directory.GetCurrentDirectory() ..

的输出

那么解决方案是什么?

1 个答案:

答案 0 :(得分:0)

你总是把它放在App_Data文件夹中(理想情况下应该放在那里)并像这样调用它。

Data Source=|DataDirectory|\TestDB.mdf;