Je suis actuellement à la suite de ces didacticiels , et je souhaite appeler la chaîne de texte en clair à partir des paramètres d'application Azure pour les applications Web. J'ai l'impression que les variables d'environnement sont tilisées pour les fichiers non config . Cependant, je souhaite utiliser la même méthodologie pour les fichiers web.config.
<connectionStrings configSource="/config/ConnectionStrings.config">
<add name="DefaultConnection" connectionString="@Environment.GetEnvironmentalVariable('SQLAZURECONNSTR_DefaultConnection')" providerName="System.Data.SqlClient" />
</connectionStrings>
<appSettings file="config\AppSettingsSecret.config">
<!-- Code Removed for Conciseness-->
<add key="mailAccount" value="@Environment.GetEnvironmentalVariable('APPSETTING_mailAccount')" />
<add key="mailPassword" value="@Environment.GetEnvironmentalVariable('APPSETTING_mailPassword')" />
<!-- Twilio-->
<add key="TwilioSid" value="@Environment.GetEnvironmentalVariable('APPSETTING_TwilioSid')" />
<add key="TwilioToken" value="@Environment.GetEnvironmentalVariable('APPSETTING_TwilioToken')" />
<add key="TwilioFromPhone" value="@Environment.GetEnvironmentalVariable('APPSETTING_TwilioFromPhone')" />
</appSettings>
Remarque: j'ai inclus le configSource = "/ example /" pour les tests locaux.
Les valeurs dans <appSettings>
ne sont que des chaînes. Si vous souhaitez étendre les variables d'environnement, votre application devra le faire elle-même.
Une façon courante de procéder consiste à utiliser la syntaxe cmd
%variable%
puis en utilisant Environment.ExpandEnvironmentVariables
pour les développer.
Les règles sont différentes (voir les liens dans la question): mais les valeurs semblent être dans des variables d'environnement donc, dans le fichier de configuration:
<add key='SomeSetting' value='%APPSETTING_some_key%'/>
puis récupérer:
var someSetting = Environment.ExpandEnvironmentVariables(
ConfigurationManager.AppSetting("SomeSetting"))
pourrait bien fonctionner.