目前,我有一个基于Web的C#应用程序(ServiceStack),它有一个XML文件,它依赖于生成客户端的东西。我不想再在客户端存储此文件。我需要一种方法来使用我编写的存储库来编辑存储在服务器上的文件。
我尝试了以下内容:
这已经奏效了:
这个问题的关键是它必须存在于API所在的地方。我不认为我理解它的工作方式非常好,我非常感谢你的帮助。
答案 0 :(得分:2)
使用System.Web.Hosting.HostingEnvironment.MapPath
查找文件相对于您的应用程序的路径,假设它是通过IIS托管的。
答案 1 :(得分:1)
在ServiceStack中,您通常使用Virtual File System来解析文件,例如:
base.VirtualFileSources.GetFile("path/to/file.xml").ReadAllText()
否则,如果您只想要路径,可以使用v4.5.4到resolve a file path relative to your WepApp consistently in all App Hosts提供的IAppHost.MapProjectPath()
,例如:
HostContext.AppHost.MapProjectPath("~/path/to/file.xml")