В моем проекте у меня есть папка с Details.aspx. и у меня есть файл Details.xml за пределами папки. Теперь я хочу получить местоположение файла Details.xml на странице Details.aspx.cs. Я пробовал разные способы, но я не получаю местоположение файла.
Details.aspx.cs:
private void GenerateXMLFile()
{
try
{
DataSet dsJobsDetails = new DataSet();
dsJobsDetails = GetJobDetails();
string fileLoc = Server.MapPath("Details.xml");
if (File.Exists(fileLoc))
{
try
{
dsJobsDetails.WriteXml(fileLoc);
Response.Redirect("Details.xml");
}
catch { }
}
}
catch { }
}
Скажите, пожалуйста, как получить местоположение файла. Спасибо..
string fileLoc = Server.MapPath("~/Details.xml");
Details.xml
вам полный путь к файлу Details.xml
на вашем сервере, что-то вроде C:\inetpub\wwwroot\application\Details.xml
.
Вы можете вернуть это как URL, перенаправив его, например, используя ~/
(корень приложения в форме URL):
Response.Redirect("~/Details.xml");
Это приведет к перенаправлению на нечто вроде http://server/Application/Details.xml
.
Например, ваша файловая структура похожа на эту
/Details.aspx.cs
/MyFolder/Details.xml
Затем вы можете получить местоположение файла
string fileLoc = Server.MapPath("/MyFolder/Details.xml");