C# 建议在何处存储Azure存储连接字符串
创建新的WebJob项目时,将连接字符串添加到App.config>configuration>connectionString中 与此相反,AppSettings(应用设置)中清楚地说明了它们的位置 推荐的地点是什么?连接字符串是否仅用于数据库连接字符串 我们将在Azure Web应用程序中使用连接字符串 创建新的WebJob项目时,AzureWebJobsStorage连接字符串将添加到App.config>configuration>ConnectionString中 创建Azure WebJob项目时,它将引用相关的WebJob库(C# 建议在何处存储Azure存储连接字符串,c#,azure,connection-string,azure-storage,azure-webjobs,C#,Azure,Connection String,Azure Storage,Azure Webjobs,创建新的WebJob项目时,将连接字符串添加到App.config>configuration>connectionString中 与此相反,AppSettings(应用设置)中清楚地说明了它们的位置 推荐的地点是什么?连接字符串是否仅用于数据库连接字符串 我们将在Azure Web应用程序中使用连接字符串 创建新的WebJob项目时,AzureWebJobsStorage连接字符串将添加到App.config>configuration>ConnectionString中 创建Azure We
Microsoft.Azure.WebJobs
,Microsoft.Azure.WebJobs.Core
)。您需要为WebJob SDK指定一个存储帐户来记录跟踪和度量数据。并且需要在配置文件的connectionStrings部分下指定连接字符串,否则将检索以下错误:
Microsoft Azure WebJobs SDK仪表板连接字符串缺失或为空。可以通过以下方式设置Microsoft Azure存储帐户连接字符串:
JobHostConfiguration
时指定相关属性,如下所示:
static void Main()
{
var config = new JobHostConfiguration()
{
DashboardConnectionString= ConfigurationManager.AppSettings["AzureWebJobsDashboard"],
StorageConnectionString= ConfigurationManager.AppSettings["AzureWebJobsStorage"]
};
if (config.IsDevelopment)
{
config.UseDevelopmentSettings();
}
var host = new JobHost(config);
// The following code ensures that the WebJob will be running continuously
host.RunAndBlock();
}
而且,你可以。对于生产,您可以在Azure Portal上指定相关的应用程序设置或连接字符串,以覆盖您的开发人员设置。更多细节,您可以参考以更好地了解它
推荐的地点是什么?ConnectionString是否仅用于数据库连接字符串
根据我的理解,当您使用第三方库时,您需要按照它的说明进行配置。在编写代码时,您可以根据需要定义连接字符串,并以相应的方式读取它们。应用程序设置使您更容易在VSTS或Azure中的构建过程中进行过度写入,因为这是一种简单的过度写入,但使用连接字符串会变得更复杂。单独的连接字符串文件也很好,但如果您正在寻找一个安全的存储位置,Azure Key Vault是一个不错的选择。使用KeyVault会将问题移到“在开发中时”,但在那里您仍然可以问相同的问题。我不太感兴趣为什么应用程序设置超过连接字符串,我感兴趣的是何女士“强加”的共识。。但是,随着投票的失败,我担心这会很快被埋葬,无论如何,谢谢@Obieff道歉,我认为这更像是一个什么时候你会用什么。好吧,其实并没有什么约定,不同的方法有不同的用途。Microsoft提供的一些示例使用连接字符串文件,一些示例使用应用程序设置。关于KeyVault,有两种方法可供使用,您可以有多个KeyVault实例,每个环境一个。另一种解决方案是在KeyVaultClient周围有一个包装器,将环境名称附加到密钥上,以便dbConnectionString->dbConnectionStringDev。环境名称将存储在appSettings中。我使用
config.DashboardConnectionString
从Azure Key Vault设置其值。谢谢,@Bruce。你能详细说明一下吗?