I have an ASP.NET MVC web application deployed to Azure. I\'m reading my setting using the GetEnvironmentVariable(...)
method.
The problem is that I can
I came across this question when facing the same problem myself. Well, just to give a clearer answer which I found at blog.elmah.io.
All you need to do is:
project.json
.That's it.
I assume you are using Azure App Service (formerly known as Azure Websites).
To define your own environment variable, click to your site → All Settings → Application settings:
Add an app setting in the "App settings" section:
You can verify the value from the debug console.
Going to https://{your site name}.scm.azurewebsites.net/DebugConsole:
Actually this solves my problem (which I found yesterday - and it's on Scott Hanselman's blog also):
Best practices for private config data and connection strings in configuration in ASP.NET and Azure
TLDR;
Put settings in a separate file that doesn't go to the repository and are not being deployed to the server. Next define missing variables in app settings like Xiaomin Wu showed.
I know OP specified in the portal, but command line is more repeatable. To do it using Azure CLI:
az webapp config appsettings set -n $webappname -g $resourceGroupName --settings ConnectionStrings__Default=$connectionString
To set an environment variable ConnectionStrings__Default
to the variable $connectionString
In the new version 2019 go to the resource -> Configuration.
Then click on "New application settings".
Then add "ASPNETCORE_ENVIRONMENT" as key and click on OK then Save.
Note that you must have the appsettings.(environment).json file for .Net Core.
(2019 version) Navigate to your AppService in the Azure cloud portal then Configuration.