在azure色的窗户上找不到路径的一部分
我在windows azure上部署了mvc-3应用程序。 在我的应用程序中,我上传文件并将其保存在App_Data/DownloadedTemplates
文件夹中。
var path = Server.MapPath("~App_Data/DownloadedTemplates");
我的应用程序目前正在暂存环境中运行。 当我上传文件时,它在浏览器中显示exception:
找不到路径’F:\ sitesroot \ 0 \ App_Data \ DownloadedTemplates \ B.htm_2c77cdfd-c597-4234-bd1e-29ca0a9b8d0e.htm’的一部分。
我使用Server.MapPath
来定位服务器上App_Data的路径,现在为什么会出现这种exception? 谁能告诉我这个问题?
您不应该在Windows Azure应用程序中执行此操作。 在Windows Azure中,您应该使用LocalResources (专用磁盘上的保留空间)来保存磁盘上的临时文件,这是您应该存储数据的唯一位置。
以下是如何访问此类LocalResource的示例(可以在VS项目中配置名称和大小):
LocalResource localResource = RoleEnvironment.GetLocalResource("DownloadedTemplates");
不要忘记LocalResources中的数据可能会消失(例如当机器崩溃时)。 如果您确实要保留数据,则应使用Windows Azure Blob存储。