在我的Azure Function中,我使用的库通过ConfigurationManager的ConnectionString建立与SQL服务器的连接,如下所示:
var cs = System.Configuration.ConfigurationManager.ConnectionStrings["DbConString"].ConnectionString;
DbConnection connection = new SqlConnection(cs);
现在,当我通过应用程序设置在门户中设置连接字符串DbConString时,一切都工作正常。但是对于本地开发,我使用azure-functions-cli,不幸的是,我不知道应该将连接字符串放在哪里,以便通过ConfigurationManager正确加载它。
我试着把它放在应用程序设置中。json文件,但没有成功。
编辑:我的appsettings.json目前是这样的:
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "",
"AzureWebJobsDashboard": "",
"MyServiceBusReader": "Endpoint=sb://xxxx=",
"DbConStr1": "data source=(localdb)\\MSSQLLocalDB;initial catalog=MyDb;integrated security=True;MultipleActiveResultSets=True;App=EntityFramework",
"ConnectionStrings": {
"DbConStr2": "data source=(localdb)\\MS..."
}
}
}
但是我无法通过ConfigalManager访问“DbConStr1”。在“ConnectionStrings”中添加“DbConStr2”(如此处所述)会导致编译错误。也许是因为我没有使用.NET Core?
编辑2:我搞砸了“连接字符串”的嵌套。它必须与“值”处于同一嵌套级别:
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "",
"AzureWebJobsDashboard": "",
"MyServiceBusReader": "Endpoint=sb://xxxx="
},
"ConnectionStrings": {
"DbConStr": "data source=(localdb)\\MS..."
}
}
我也有同样的问题,现在使用的是.net标准(而不是核心)。我将我的设置添加到Azure功能的应用程序设置部分(在Azure门户中):-
此下载中包含local.settings.json的副本,其中包含正确json格式的应用程序设置。然后我通过ConfigurationManager.Appsettings["mysset"]访问它们
// C# Environment Variables example for Azure Functions v1 or v2 runtime
// This works all the way up to but not including .NET Core 2.0
var clientId = Environment.GetEnvironmentVariable("ClientId");
var clientSecret = Environment.GetEnvironmentVariable("ClientSecret");
var aadDomain = Environment.GetEnvironmentVariable("AADDomain");
请记住您在local.settings中所做的设置。json将不会反映在azure中。请在Azure门户的应用程序设置中添加您的值。请单击链接-https://docs.microsoft.com/en-us/azure/azure-functions/functions-how-to-use-azure-function-app-settings
添加文件local.setting.json
{
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "UseDevelopmentStorage=true",
"AzureWebJobsDashboard": "UseDevelopmentStorage=true",
"tenantId": "You tenantId",
"resource": "https://management.azure.com/",
"ClientSecret": "You ClientSecret, Key from App Registry",
"ClientId": "You ClientId, Application ID from App registry",
"subscriptionId": "You subscriptionId",
"resourceGroupName": "Your resourceGroupName",
"serverName": " Your SQL Server",
"databaseNameDW": "Your Database",
"apiversion": "2017-10-01-preview"
}
}
在C#代码中使用:
private readonly static string tenantId = ConfigurationManager.AppSettings["tenantId"];
我有一个函数应用,定义如下 其中< code > let-test-this-in 和< code > let-test-this-out 是连接字符串为< code >“defaultendpointsprocol=”的存储帐户下现有存储队列的名称...;account name =…;AccountKey= ... "(直接从门户中的访问键-连接字符串复制而来)。我发布时生成的function
问题内容: 我来自ASP .Net背景。我现在正在编写一个Java程序,以将数据从DB2数据库导入到Oracle数据库中。我已经完成了导入此数据的基本功能。 我的问题是,我将所有连接属性都编码为Java程序本身。是否有任何“最佳实践”方法将连接字符串详细信息存储在类似于我们用于ASP .Net的web.config的配置文件中?Java有什么机制可以实现这一目标吗?还是只需要使用I / O操作从简
我正在使用Azure功能完成本指南,以将IoTHub消息提交到Azure存储。我在第5d节,在那里我需要为我的函数创建一个新的服务总线连接字符串,但无论我使用什么,包括指南中的格式: 我得到一个错误: 不是有效的服务总线连接字符串。 我尝试使用IoT中心endpoint中的,以及iothubboss访问策略中的,但它再次拒绝它。 然后我创建了一个新的服务总线,并使用了这个连接(见下面我的回答和最初
Hyperledger Composer使用连接配置文件连接到运行时。 创建连接配置文件 1.创建一个名为connection.json的新文件,其中包含Hyperledger Fabric v1.0的以下信息。} 为Hyperledger Fabric v1.0创建连接配置文件,使用以下格式: { "type": "hlfv1", "orderers":
我正在开发一个程序,该程序将获取一个文本文件,并将数字从0-99转换为文字(即0)- 这里有几行输出(每一行都是不同的system.out行): 这是输入文件上的三行: 如您所见,数字随系统一起添加和打印。从函数convertToWord中退出,但一旦返回main,就会丢失。如何跨函数将这些转换附加到字符串?
我已经成功地建立了一个混合连接,将我的Azure web应用程序连接到本地SQL-server。我添加了主要的本地网关连接字符串,它与命令一起列出:< code > Get-hybrid connection 。 但是它并不总是保持连接。现在我想知道如何处理辅助连接字符串。如果我尝试使用添加它,我会得到这个错误: Add-HybridConnection : Exist Configuration