У меня есть база данных sql, где я являюсь строкой filepath и именем файла некоторых файлов. Я использую Visual Studio 2008 как IDE и SQL Server 2005 для разработки.Путь к файлу изменяется при выполнении sql-запроса из C#
Если я пытаюсь выполнить SQL-запрос, чтобы получить путь к файлу, он возвращает правильный результат. Но когда я выполняю SQL-запрос из приложения Windows в C#, он возвращает путь к файлу, в котором все \
изменены на //
.
Вот SQL-запрос я выполнил из SQL Server Management Studio:
select FilePath FROM dbo.[tbl_name] WHERE SerialNo = 2;
Это приводит к FilePath
быть C:\Program Files\Test\Mydoc.pdf
Но когда я пытаюсь через окна C# формирует код, как указано ниже. Я получаю неправильное значение для FilePath
: C://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();
}
Что может быть проблема?
Почему вы считаете это проблемой? – zerkms
Потому что это неправильный метод FilePath to Process.start() и выбрасывание исключения, поскольку система не может найти указанный файл. – Utkarsh