7

我的网络角色需要读取一个只读数据文件(用于 IP 地理位置)。它当前位于 App_Data 文件夹中,该文件夹未包含在云服务的部署包中。与“Web 部署”不同,Azure 云服务部署没有包含/排除 App_Data 的复选框。

是否有合理的方法让部署包包含 App_Data 文件夹/文件?还是将 Azure 存储用于此类事情是更好的方法?(成本和性能明智)

我正在使用 Visual Studio 2013 和 Azure SDK 2.2

更新: - 发现 App_Data 文件实际上部署在 /bin/App_Data 下!所以他们在那里。- 实际上最终将文件移动到存储 blob,并在启动时将其复制到应用程序中天蓝色服务器上的本地存储区域。这大大减小了部署包的大小,因为包中没有携带静态文件。

4

3 回答 3

8

如果 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-07-10T08:09:25.343 回答
1

我遇到了同样的问题。Azure server部署我的服务后,我在( )上的本地目录上运行递归目录搜索string appRoot = Environment.CurrentDirectory;,发现存储的文件在下面,E:\\approot\\App_Data\\<file name>然后我使用了以下代码appRoot = Path.Combine(appRoot + @"\", @"App_Data\<file name>t");

于 2014-03-19T03:02:53.843 回答
0

也许利用 Blob 存储来上传文件、管理文件等。此处的此链接还记录了如何以编程方式访问它。

http://www.windowsazure.com/en-us/develop/net/how-to-guides/blob-storage/

于 2013-11-11T15:51:16.780 回答