
Partager:
Guillaume est Senior Developer Advocate chez Vonage. Il travaille dans le domaine de .Net depuis près de 15 ans et s'est concentré sur la promotion du Software Craftsmanship au cours des dernières années. Ses sujets de prédilection sont la qualité du code, l'automatisation des tests, le mobbing et les katas du code. En dehors du travail, il aime passer du temps avec sa femme et sa fille, faire de l'exercice ou jouer.
Configuration implicite en .NET
Bonjour les amis,
Dans notre dernier articlenous avons démontré le processus d'enregistrement des clients Vonage dans le conteneur IoC .NET. Il s'agissait d'une étape importante dans la simplification des interactions avec notre SDK.
Prenons maintenant le temps de réfléchir : Et si nous allions plus loin ?
Où en étions-nous ?
Pour rappel, voici comment nous avions l'habitude d'enregistrer ces clients :
// Initialize credentials
Credentials credentials = ...
// Register our clients with a 'Transient' lifetime...
builder.Services.AddVonageClientTransient(credentials);
// Or a 'Scoped' lifetime
builder.Services.AddVonageClientScoped(credentials);Vous deviez initialiser une instance Credentials, généralement à partir d'une paire ApiKey/ApiSecret ou d'une paire ApplicationId/PrivateKey. Ces valeurs proviennent souvent de votre fichier de configuration ou sont extraites de notre instance Configuration.
Vous voyez où je veux en venir, n'est-ce pas ?
Chargement implicite de la configuration
Il n'est plus nécessaire de se préoccuper de cette Credentials n'est plus nécessaire. Nous sommes allés plus loin et avons modifié la méthode pour qu'elle accepte immédiatement une instance IConfiguration.
// Register our clients with a 'Transient' lifetime...
builder.Services.AddVonageClientTransient(builder.Configuration);
// Or a 'Scoped' lifetime
builder.Services.AddVonageClientScoped(builder.Configuration);Maintenant, nous nous occupons de tout, car nous récupérons toutes les données nécessaires directement à partir de votre fichier de configuration.
Moins de travail manuel pour vous !
Extension avec une configuration spécifique à l'environnement
Jusqu'à ce que v6.9.0nous ne pouvions charger les données de configuration qu'à partir de settings.json ou appsettings.json. Cela pouvait être problématique si vous vouliez utiliser des valeurs spécifiques à l'environnement, par exemple, avec un déploiement dans un environnement de staging.
Vous avez peut-être remarqué que nous parlons du chargement de données sur la base de votre configuration locale. Qu'est-ce que c'est que ce scoop ?
Nous récupérons toutes ces valeurs de configuration cruciales à partir des sources que vous avez chargées dans votre constructeur de configuration. Par exemple, nous pouvons récupérer les valeurs de appsettings.{environment}.jsonla convention d'appellation par défaut d'une nouvelle application .NET.
Clôture de la session
Restez à l'écoute pour découvrir d'autres fonctionnalités et améliorations de la qualité de vie.
Comme toujours, nous apprécions vos commentaires ! N'hésitez donc pas à visiter notre dépôt GitHub pour signaler des problèmes, suggérer des améliorations ou même faire des demandes d'extension. Si vous avez des questions, rejoignez-nous sur le Slack des développeurs de Vonageet nous vous répondrons.
Bon codage et à bientôt !
Partager:
Guillaume est Senior Developer Advocate chez Vonage. Il travaille dans le domaine de .Net depuis près de 15 ans et s'est concentré sur la promotion du Software Craftsmanship au cours des dernières années. Ses sujets de prédilection sont la qualité du code, l'automatisation des tests, le mobbing et les katas du code. En dehors du travail, il aime passer du temps avec sa femme et sa fille, faire de l'exercice ou jouer.