以编程方式访问存储帐户

问题描述

在我的C#解决方案中,我正在通过连接字符串访问存储帐户。

问题-

  1. 现在云解决方案已在开发中
  2. 解决方案将升级为qa \ prod时-该字符串将 更改。 是否有另一种更好的方式来管理此方法,即避免代码 在整个促销活动中进行更改\ env更改。

我想的一种方法是使用保险库..还有其他想法吗? 请指导。 谢谢。

解决方法

我假设您正在谈论使用存储帐户连接字符串的Web应用程序。

通常,将连接字符串存储在配置文件中(对于.Net Framework是web.config,对于.net core是appsettings.json)是一种好习惯。

但是,尽管这些功能在Azure App Service中有效,但已过时了。因此,您需要为存储连接创建“应用程序设置/连接字符串”(转到App Service中的“配置”刀片)。

您没有提到解决方案中包含哪种应用程序。根据类型,您可以使用以下适当的技术来访问“应用设置” /连接字符串。

  1. .Net Framework-ConfigurationManager命名空间
  2. .Net Core-IConfiguration

谢谢, Praveen

,

您至少应该做两件事。

  1. 使用Options pattern in ASP.NET Core来检索设置,例如连接字符串。例如,如果您在本地工作,它将使用appsettings.json,并且将使用您在Azure中设置的环境变量覆盖这些设置。这意味着,您不必担心设置的来源。

  2. Configure connection strings在您的App Service应用程序中。

也考虑使用using Key Vault references for App Service settings

,

我看到您正在使用Azure DevOps。

过去可以说,过去的“ config转换” 现已不再推荐使用连续部署(CD)。从本质上讲,您的连接字符串表示“秘密” 或至少是与阶段相关的的内容,通常,阶段相关的项目不应成为源代码存储库的一部分。当然可以将它们放入其中,但是使用CD进行管理要容易得多。

相反,无论是谁定义CD管道,都可以通过其他方式(例如DevOps CD 变量)对其进行定义,并在代码编译后但在部署之前将其注入到配置中。

更多