要從Azure函數中的local.settings.json文件中讀取自定義設置,可以使用以下代碼:
```csharp
using System;
using System.Configuration;
public static string GetSetting(string settingName)
{
try
{
return Environment.GetEnvironmentVariable(settingName, EnvironmentVariableTarget.Process) ??
ConfigurationManager.AppSettings[settingName];
}
catch (Exception)
{
return null;
}
}
public static void Run(TimerInfo myTimer, TraceWriter log)
{
string customSetting = GetSetting("CustomSetting");
log.Info($"CustomSetting value: {customSetting}");
}
```
在上面的代碼中,GetSetting()方法用于讀取指定的自定義設置。它首先嘗試從環境變量中獲取設置值,如果未找到,則從ConfigurationManager.AppSettings中獲取設置值。
然后,在Run()方法中,你可以通過調用GetSetting()方法并傳入設置名稱來獲取自定義設置的值。在日志中記錄該值,以便進行驗證。
確保在本地運行該函數時,在local.settings.json文件中設置了CustomSetting的值:
```json
{
"IsEncrypted": false,
"Values": {
"AzureWebJobsStorage": "DefaultEndpointsProtocol=https;AccountName=yourstorageaccount;AccountKey=yourstorageaccountkey;EndpointSuffix=core.windows.net"
},
"CustomSetting": "YourCustomSettingValue"
}
```
請注意,以上的代碼示例假設你已經添加了所需的引用和命名空間。請根據你的具體要求進行相應的修改。