我有一个包含少数项目的 Visual Studio 2008 解决方案。一个项目包含我正在部署的 WCF Service。该 WCF 服务引用了其他项目之一中的一些代码。该代码正在尝试读取 WCF 项目文件夹中的文件。伪项目结构:
Solution
Project1
myclass.cs
string file = Server.Mappath("");
Project2
filefolder
myfile.txt
放入 Mappath 的正确语法是什么?我尝试了所有不同的变体,例如:
".filefolder/myfile.txt"
"/filefolder/myfile.txt"
"./filefolder/myfile.txt"
"~/filefolder/myfile.txt"
似乎没有人能够访问该文件。我想到的一件事:Visual Studio 2008 在 IIS 中自己的沙箱中运行项目和 WCF。这可能是问题吗?如果在常规 IIS 中设置和部署它会起作用吗?
最佳答案
var serverPath =
System.Web.Hosting.HostingEnvironment.MapPath("~/filefolder/myfile.txt");
关于C#:Server.Mappath 如何读取文件?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/987082/