我有这个代码将测试文件保存在我认为是项目的bin文件夹中:
XDocument doc = XDocument.Parse(stringifiedXML);
doc.Save("testXMLFile.xml");
...但实际上它最终出现在C:\ Program Files(x86)\ IIS Express
中是的,IIS Express正在托管这个Web API应用程序,当从Visual Studio运行应用程序时,我希望将该文件保存到项目的bin文件夹中。为什么这样?
我可以指定我想要保存文件的位置:
// In PlatypusGlobals.cs
public static string appDataFolder = HttpContext.Current.Server.MapPath("~/App_Data/");
doc.Save(string.Format("{0}testXMLFile2.xml", PlatypusGlobals.appDataFolder));
...但仍然希望“原始保存”转到bin目录。这是可配置的,还是只需要将文件保存到IIS Express文件夹中?
答案 0 :(得分:5)
我认为你误解了程序的执行方式。它永远不会从“Visual Studio”执行。它从IIS Express执行,Visual Studio附加到它。
由于此程序在IIS Express下执行,因此程序的可执行路径位于IIS Express目录下。如果您使用完整IIS的本地安装,则会有所不同,因为它会创建一个直接从bin文件夹运行dll的虚拟目录。