从c#执行sql查询时文件路径更改

时间:2013-09-06 05:46:36

标签: c# sql sql-server-2005

我有一个sql数据库,其中我是一些文件的字符串文件路径和文件名。我使用Visual Studio 2008作为IDE和SQL Server 2005进行开发。

如果我尝试执行SQL查询以获取文件路径,则返回正确的结果。但是当我在c#中从Windows应用程序执行SQL查询时,它返回的文件路径中所有\都更改为//

以下是我从SQL Server Management Studio执行的SQL查询:

select FilePath FROM dbo.[tbl_name] WHERE SerialNo = 2;

导致FilePathC:\Program Files\Test\Mydoc.pdf

但是,当我尝试通过C#windows窗体代码时,如下所述。我的FilePathC://Program Files//Test//Mydoc.pdf

值不正确
try
{
     using (connection = new SqlConnection(connectionString))
     {
          connection.Open();
          using (SqlCommand command = new SqlCommand("SELECT FilePath FROM dbo.[tbl_name] WHERE SerialNo LIKE @Sno", connection))
          {
              command.Parameters.Add(new SqlParameter("Sno", Serial));
              FiletoOpen = command.ExecuteScalar().ToString();
              Process.Start(FiletoOpen );
          }
      }
}
catch (Exception ex)
{
     MessageBox.Show(ex.ToString(), "Exception has occured!", MessageBoxButtons.OK);
}
finally
{
      connection.Close ();
}

可能是什么问题?

1 个答案:

答案 0 :(得分:1)

我猜你在调试器中看到了这条路径。 调试器只是逃避路径而没有别的。如果你把它写在某个地方,比如控制台,你将获得原始路径(带有单个反斜杠)。