Azure文件访问/访问Windows Azure云服务中的自定义配置文件

时间:2013-03-04 12:07:14

标签: azure azure-storage file-access

我在stackoverflow上发现了很多文章,我试图用它来回答我在windows azure云服务中关于文件访问的问题。

我的应用程序有许多xml文件,这些文件用作自定义配置文件,这些文件存储在Web项目中,因为这是管理/编辑它们最方便的地方。

现在,当将此解决方案部署到本地IIs服务器时,我显然可以轻松访问和读取这些xml文件。我原先预计在windows azure云服务中这将完全相同。但是我发现在尝试读取这些文件时我遇到了文件访问错误。

在这里阅读了很多文章之后很明显情况并非如此,要访问文件存储,我必须配置本地存储。

然而,这并不适合我的场景,因为此存储是临时的,不是在角色实例之间共享,并且在部署时不会使用xml配置文件填充。

我希望将我的配置文件保存在项目中,因为它们与特定的发行版本相关联,因此很好的是这些文件都在源代码控制下并且很好,因为它们是在每次部署发布时部署的。

我可以想到一种利用本地存储的方法,这可能是可能的但不确定如何。部署时是否可以将所有本地配置文件复制到本地存储帐户,然后应用程序可以在需要时从本地存储访问它们。事实上,这将是暂时的而不是共享的,我认为每个实例都有自己的本地存储,并且配置了配置文件。但我需要确保云服务是否崩溃本地存储将重新填充必要的配置文件

还是有其他选择。?

显然在所有文章中建议使用azure stoage并使用blob,我可以这样做,但这会带来额外的问题,我必须找到一种方法来自动部署所有配置文件,每次部署到azure。

任何有关如何最好地实现这一目标的帮助都将非常感激。

正如我在下面的一条评论中提到的,配置文件是标准的xml文件,它们作为解决方案中的内容包含在内。部署到内部部署服务器时,将发布和部署配置文件并可以读取。但是在部署到azure云服务时,会部署配置文件(因为我通过远程检查并在云服务vm上查找文件来检查)。但每当我尝试阅读它们时(使用XmlSerializer)我都会收到拒绝访问错误。

1 个答案:

答案 0 :(得分:0)

Kramer,如果要在项目中包含配置文件,并将“复制到输出”设置为“始终复制”,或者将“构建类型”设置为“内容”,则访问配置文件应该像在IIS中一样工作。查看以下2篇帖子,了解如何执行此操作的示例: