Программа использует папку Microsoft Visual Studio вместо относительного пути - PullRequest
1 голос
/ 11 августа 2010

Когда я пытаюсь запустить страницу .aspx со следующим кодом:

System.IO.File.Delete("~/img/afisha/" + fileName);

, он пишет сообщение: «Не удалось найти часть пути» C: \ Program Files \ Microsoft Visual Studio 9.0 \Common7 \ IDE \ ~ \ IMG \ афиша \ brs_01.jpg «.Но мне нужно использовать относительный путь.

пс.то же самое происходит со строкой соединения: <add name="accessConStr" connectionString="Provider=Microsoft.ACE.OLEDB.12.0; data source=ExpertBase.mdb; Persist Security Info=False;" providerName="System.Data.OleDb"></add>

Есть идеи?(и будет ли он правильно работать на сервере?)

1 Ответ

3 голосов
/ 11 августа 2010

Попробуйте Server.MapPath()

System.IO.File.Delete(Server.MapPath("~/img/afisha/" + fileName));

для строки подключения, вы можете попробовать использовать переменную строку вместо

internal readonly string CONNECTION_STRING = "Provider=Microsoft.ACE.OLEDB.12.0; data source={0}; Persist Security Info=False;"

internal static string ConnectionString
{   
    get 
    { 
         return string.Format(CONNECTION_STRING, 
             Server.MapPath("~/ExpertBase.mdb")); 
    } 
}
...