以编程方式访问ASP.NET MVC4上的文件

Kne*_*lis 1 c# asp.net asp.net-mvc-4

作为ASP.NET MVC4项目的一部分,我需要能够读取和写入一些XML文件.我无法找到/访问我需要的文件.

我已经创建了一个演示项目,我已经添加了一个/Documents包含一些XML文件的文件夹.

所以在同一个项目中我有一个/Classes我的类的文件夹,应该使用它来读取XML文件XDocument.load().

这是我想做的(以及我认为它应该如何工作):

string path = "/Documents/test.xml"; // Doesn't work
XDocument xml = XDocument.load(path);
Run Code Online (Sandbox Code Playgroud)

但是,这不起作用.不是"/ Documents","Documents"或"〜/ Documents".提供完整路径有效,但如果要在其他环境中部署网站则不是很有用.

string path = "D:/Projects/Demo/Demo/Documents/test.xml"; // Works
XDocument xml = XDocument.load(path);
Run Code Online (Sandbox Code Playgroud)

有什么建议我如何使用某种相对路径访问文件?

Asi*_*taq 5

Server.MapPath获得的绝对路径.

string path = Server.MapPath("/Documents/test.xml");
XDocument xml = XDocument.load(path);
Run Code Online (Sandbox Code Playgroud)