I have the following code:
[FunctionName("FunctionValidateDriverRecord")]
public static async Task Run([TimerTrigger("0 */1 * * * *")]TimerInfo myTimer, TraceWriter log)
{
string connString = ConfigurationManager.ConnectionStrings["AssetContext"].ConnectionString;
string mail = ConfigurationManager.AppSettings["EmailForErrors"];
and local.settings.json:
{
"IsEncrypted": false,
"ConnectionStrings": {
"AssetContext": "data source=server;initial catalog=3md_vistracks_sync;integrated security=True;MultipleActiveResultSets=True"
},
"AppSettings": {
"EmailForErrors": "brauncomm@gmail.com"
}
}
connString
has value, but mail
is null. Why?
In local.settings.json, you should use Values
instead of AppSettings
. The file schema is required for Azure function local development.
You probably are using v1 functions, feel free to use ConfigurationManager as you have found it's valid for connectionString. v2 doesn't support ConfigurationManager and you can refer to environment variables, See this answer for more details about reading local and Azure settings.