2017-09-18 5 views
0

J'ai une application .NET dans Azure qui utilise Redis comme cache via CacheManager. L'application utilise des emplacements de déploiement. Je veux avoir différents ID de base de données Redis pour différents emplacements. Les emplacements Test/Staging/Prod utilisent Redis databaseId 0/1/2.Comment choisir l'ID de base de données Redis dans Azure pour CacheManager?

Est-il possible de définir le databaseId par programme dans CacheManager tout en gardant le reste de la configuration (IP, port, ssl, clé, etc.) dans le fichier web.config? Seul le numéro de base de données varie et il est stocké dans Azure appSetting pour chaque emplacement.

Répondre

0

Il n'y a aucun moyen de faire exactement ce que j'ai demandé avec CacheManager. Au moins pour le moment. Une fois la configuration de CacheManager compilée à partir de web.config, elle est en lecture seule.

Mais il existe une solution pour différentes bases de données Redis pour différents emplacements de déploiement:

  1. Ajouter chaîne de connexion Redis dans connectionStrings section de web.config Inclure la base de données ID dans la chaîne de connexion.
  2. Reportez-vous à cette chaîne de connexion dans cacheManager ->gestionnaires section. Regardez l'exemple ici https://github.com/MichaCo/CacheManager/blob/dev/test/CacheManager.Tests/app.config
  3. Utilisez web.config transformation ou attacher différentes chaînes de connexion à différents emplacements de déploiement dans Azure.