我发现了一些关于 stackoverflow 的文章,我试图用这些文章来回答我对 Windows azure 云服务中文件访问的问题。
我的应用程序有许多用作自定义配置文件的 xml 文件,这些文件存储在 Web 项目中,因为这是能够管理/编辑它们的最方便的地方。
现在,当将此解决方案部署到本地 IIs 服务器时,我显然可以轻松访问和读取这些 xml 文件。我原本预计这在 Windows azure 云服务中会完全一样。但是我发现我在尝试读取这些文件时遇到了文件访问错误。
在阅读了这里的一些文章之后,很明显情况并非如此,要访问文件存储,我必须配置本地存储。
但是,这不太适合我的方案,因为此存储是临时的,不跨角色实例共享,并且不会在部署时填充 xml 配置文件。
我想将我的配置文件保留在项目中,因为它们与特定的发布版本相关联,所以这些都在源代码控制下很好,因为它们是在每个发布的部署中部署的。
我可以想到一种利用本地存储的方法,这可能是可能的,但不确定如何。部署时是否有任何方法可以将所有本地配置文件复制到本地存储帐户,然后应用程序可以在需要时从本地存储访问它们。我认为这将是临时的并且不共享的事实是可以的,因为每个实例都有自己的本地存储,并且也部署了配置文件。但我需要确保云服务是否崩溃,本地存储将重新填充必要的配置文件
还是有其他选择。?
显然,在所有文章中,建议是使用 azure stoage 并使用 blob,我可以这样做,但这会带来额外的问题,我必须找到一种方法,在每次部署到 azure 时自动部署所有配置文件。
我们将不胜感激地收到有关如何最好地实现这一目标的任何帮助。
正如我在下面的评论之一中提到的,配置文件是标准的 xml 文件,它们作为内容包含在解决方案中。当部署到本地服务器时,配置文件会被发布和部署并且可以读取。但是当部署到 azure 云服务时,配置文件被部署(正如我通过远程处理并在云服务 vm 上查找文件进行检查的那样)。但是每当我尝试阅读它们(使用 XmlSerializer)时,我都会收到拒绝访问错误。