我有一个只读数据文件(用于IP地理位置),我的web角色需要读取该文件。它当前位于App_Data文件夹中,该文件夹未包含在云服务的部署包中。与"web deploy“不同,azure云服务部署没有复选框来包含/排除App_Data。
有没有一种合理的方法使部署包包含App_Data文件夹/文件?或者使用Azure存储来处理这类事情是更好的方式吗?(成本和性能)
我正在使用Visual Studio 2013和Azure SDK 2.2
更新:-发现App_Data文件实际上部署在/bin/App_Data下!所以他们就在那里。-实际上是在启动时将文件移动到存储blob,并将其复制到应用程序中azure服务器上的本地存储区域。这极大地减小了部署包的大小,因为包中没有携带静态文件。
发布于 2014-07-10 16:09:25
如果App_Data不为空,它将发布在Azure网站上,您可以通过
var folder = Server.MapPath("~/App_Data/");您还可以在其中创建文件夹和写入文件
var folder = Server.MapPath("~/somefolder/");
Directory.CreateDirectory(folder);
var path = folder + "file.txt";
File.AppendAllText(path, "some text");发布于 2014-03-19 11:02:54
我也遇到过同样的问题。部署服务后,我在Azure server (string appRoot = Environment.CurrentDirectory;)上的本地目录上运行递归目录搜索,发现存储的文件在E:\\approot\\App_Data\\<file name>下,然后使用以下代码appRoot = Path.Combine(appRoot + @"\", @"App_Data\<file name>t");
发布于 2013-11-11 23:51:17
也许可以利用Blob存储,而不是上传文件,管理它等。这里的链接还介绍了如何以编程方式访问它。
http://www.windowsazure.com/en-us/develop/net/how-to-guides/blob-storage/
https://stackoverflow.com/questions/19899847
复制相似问题