编码的UItestingExcel连接string目录错误

我试图用我的编码 – 用户界面testing,但我的连接string不工作。 你能帮我吗? 我是一个nuub在这:)好吧,在这里 – >我的数据目录是C:\(直接在C盘),我的连接string是

[DataSource("System.Data.Odbc", "Dsn=Excel Files;Driver={Microsoft Excel Driver (*.xls)};dbq=C:\\Data1.xls;defaultdir=.;driverid=790;maxbuffersize=2048;pagetimeout=5;readonly=true", "Sheet1$", DataAccessMethod.Sequential), TestMethod]

这完美的作品。 但我想我的文件在“D:\ TestProjects \ Coded2 \ DataFiles \ Data1.xls”,我不能这样做。 得到一些错误和testing失败。

我应该如何写我的数据目录?

感谢您的帮助。

有问题的版本是

 [DataSource("System.Data.Odbc", "Dsn=Excel Files;Driver={Microsoft Excel Driver (*.xls)};dbq=C:\\Data1.xls;defaultdir=.;driverid=790;maxbuffersize=2048;pagetimeout=5;readonly=true", "Sheet1$", DataAccessMethod.Sequential), TestMethod] 

失败的版本显示在评论中

 [DataSource("System.Data.Odbc", "Dsn=Excel Files;Driver={Microsoft Excel Driver (*.xls)};dbq=D:\TestProjects\Coded2\DataFiles\Data1.xls;defaultdir=.;driverid=79‌​0;maxbuffersize=2048;pagetimeout=5;readonly=true", "Sheet1$", DataAccessMethod.Sequential), TestMethod] 

显着的区别在于,反锯齿在工作中是翻倍的,因为它们是string中的转义字符。 C#将每个反斜杠加上下面的字母作为转义序列。 因此,文件名D:\TestProjects\Coded2\DataFiles\Data1.xls\T\C\D\D ,编译器说它们中的一个或多个不被识别。

你也可以写一个带有前导@ C#string,这意味着反斜杠是自己的。 所以写作为非工作版本应该工作

 [DataSource("System.Data.Odbc", @"Dsn=Excel Files;Driver={Microsoft Excel Driver (*.xls)};dbq=D:\TestProjects\Coded2\DataFiles\Data1.xls;defaultdir=.;driverid=79‌​0;maxbuffersize=2048;pagetimeout=5;readonly=true", "Sheet1$", DataAccessMethod.Sequential), TestMethod]