有没有办法在不修改将数据保存到磁盘的Upload方法的情况下在Azure云上部署Web应用程序?
在上传方法中,我将数据保存在磁盘上:
var imgPath = Url.Content(String.Format("~/Content/PersonImg/{0}", fileName));
String filePath = HostingEnvironment.MapPath(imgPath);
最佳答案
如果您将代码部署在 Windows Azure Website
中,那么上传代码应该可以工作,尽管我见过有人使用 Server.MapPath
而不是HostingEnvironment.MapPath
。但是,如果您将代码部署在 Windows Azure Cloud Service
中,那么上面的代码将不起作用。如果是云服务,您需要使用 Local Storage
.
话虽如此,我认为您应该避免将文件存储在服务器本身上。正如另一个答案中提到的,虚拟机中的存储不是持久的。此外,对于 Windows Azure 网站,您获得的磁盘空间量是有限的。正如其他答案中提到的,您应该查看 Windows Azure Blob Storage
用于存储这些文件。
关于c# - 在 Azure 中无需修改代码即可部署,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21526998/