如何从文件夹中获取C#中的文件位置

时间:2014-10-14 08:01:10

标签: c# asp.net .net

在我的项目中,我有一个包含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 { }
    }

请告诉我如何获取文件位置。 谢谢..

2 个答案:

答案 0 :(得分:2)

string fileLoc = Server.MapPath("~/Details.xml");

将为您提供服务器上Details.xml文件的完整路径,例如C:\inetpub\wwwroot\application\Details.xml

您可以通过重定向到它来将其作为URL返回,例如,使用~/(应用程序根目录,以URL格式):

Response.Redirect("~/Details.xml");

这将转换为重定向到http://server/Application/Details.xml

答案 1 :(得分:2)

例如,您的文件结构就像这样

/Details.aspx.cs
/MyFolder/Details.xml

然后您可以通过此

获取文件位置
string fileLoc = Server.MapPath("/MyFolder/Details.xml");