2016-09-04 2 views
0

J'ai un service Cloud dans Azure et j'ai plusieurs environnements. Une de mes classes utilise un mappage (mappage clé-valeur) pour effectuer certains calculs. Le nombre de clés dans ce mappage varie en fonction de l'environnement.Azure Cloud Service - mappage différent par environnement

Je suppose que je n'ai pas d'autre choix que d'insérer (en quelque sorte) le mappage à la configuration de l'environnement (fichier .cscfg). Puisque la configuration est au format XML, je me demande quel serait le moyen le plus propre et le plus extensible pour définir le mappage pour chacun des environnements.

Merci


Par exemple:

Je cet ID à Région Mapper:

private static readonly Dictionary<string, Region> Id = new Dictionary<string, Region> 
{ 
    {"1", Region.UsE}, 
    {"2", Region.UsE}, 
    {"3", Region.UsE}, 
    {"4", Region.UsSC}, 
    {"5", Region.UsSC}, 
    {"6", Region.UsSC}, 
    {"7", Region.EuW}, 
    {"8", Region.EuN} 
}; 

Cette cartographie des changements entre les environnements et je voudrais en quelque sorte de mettre élégamment la cartographie en le fichier cscfg de chaque environnement.

Espérons que cela explique mieux ma question.

+0

Pouvez-vous donner un exemple? –

+0

avez-vous considéré les variables d'environnement? https://azure.microsoft.com/fr-fr/documentation/articles/cloud-services-startup-tasks-common/#define-environment-variables-before-a-role-starts – 4c74356b41

Répondre

0

Vous pouvez ajouter les valeurs à l'élément ConfigurationSettings des fichiers .CSCFG pour chaque environnement. Les valeurs peuvent ensuite être lues à l'aide de la classe CloudConfigurationManager.

Vous pouvez également avoir des fichiers XML ou JSON par environnement.

+0

Mais le nombre de propriétés dans ce dictionnaire varie par environnement. – johni

+0

Je pense que vous devez regarder dans les modèles ARM, dans ce cas. – 4c74356b41