【问题标题】:Windows Azure and Saving SettingsWindows Azure 和保存设置
【发布时间】:2012-09-29 02:02:26
【问题描述】:

如果有人能指出我正确的方向,我将不胜感激。

我正在尝试构建一个基于 Azure 的网站。我已经在使用 Blob 存储来存储大量照片。存储与站点全局配置相关的设置的最佳方式是什么?

例如,需要通过管理界面更改某些设置,例如“FooterCopyrightText”或“国家/地区”(带有区号列表等)。我不想将这些构建到 Web.Config 中,或者将其作为数据文件包含在 App_Data 中。

如果这是一个本地桌面应用程序,我可以简单地让它反序列化一个 XML 文件并将其作为静态变量存储在内存中,但这种方法不适用于 Azure 上的可扩展应用程序。

我的想法是做一些事情,比如将它存储在 Azure Blob 存储中,并缓存设置。

这是正确的方法吗?

感谢您的任何想法或建议。

【问题讨论】:

    标签: c# azure static settings cloud


    【解决方案1】:

    在我最近的项目中,我们遇到了类似的问题,我们需要存储与我们发送的各种电子邮件相关联的 HTML。我们最终将文本存储在 Azure 表存储中,它提供了一种廉价且快速的方式来存储此类信息,这些信息可跨多个角色和网站在全球范围内访问。

    这里有一个walkthrough 可以帮助您入门。

    【讨论】:

      【解决方案2】:

      您可以使用Azure SQL 来存储配置数据。它会为您提供关系数据(例如与特定国家/地区相关的区域代码),并且您不会产生任何查询成本,如果您需要为每次页面加载检索此配置,这可能会节省成本。或者罗伯特的方法同样好。这可能取决于数据类型和您的最佳访问模式。

      使用Entity Framework and code-first migrations,创建配置模型相对容易,然后随着需求的变化进行迁移。

      【讨论】:

      • 也感谢您的建议,我计划将部分设置移动到 SQL 表中,然后使用 Azure 表存储进行其余设置。谢谢!
      【解决方案3】:

      您可以使用 ServiceConfiguration.cscfg 文件。与 web.config 或 app.config 几乎相同,但您可以通过 Azure 管理控制台动态更改值。当然,你必须使用 RoleEnvironment.GetConfigurationSettingValue 而不是普通的 ConfigurationManager 类。

      更新:此链接有点旧,但看起来仍然涵盖了使用 ServiceConfiguration.cscfg 文件 http://www.codeproject.com/Articles/63977/Windows-Azure-Development-Deep-Dive-Working-With-C 需要了解的内容

      【讨论】:

        猜你喜欢
        • 2013-09-21
        • 1970-01-01
        • 1970-01-01
        • 2022-11-25
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多