.net 6 Iservicecollection

3 min read Jun 03, 2024
.net 6 Iservicecollection

.NET 6 : Découverte de IServiceCollection

IServiceCollection est une interface centrale dans le framework .NET 6, qui joue un rôle crucial dans la gestion des dépendances d'une application. Elle est utilisée pour enregistrer les services et leurs implémentations, permettant ainsi à votre application d'accéder aux services nécessaires tout au long de son cycle de vie.

Qu'est-ce que IServiceCollection ?

IServiceCollection est une interface qui vous permet de configurer les services de votre application .NET 6. Elle est un élément clé du modèle de programmation de dépendances, qui est une pratique courante pour organiser et gérer les interactions entre les différentes parties d'une application.

Fonctionnement de IServiceCollection

L'interface IServiceCollection expose une série de méthodes qui vous permettent d'ajouter, de supprimer ou de modifier des services. Voici quelques-unes des méthodes les plus courantes :

  • AddSingleton(): Ajoute un service unique à la collection, qui sera instancié une seule fois pour toute la durée de vie de l'application.
  • AddScoped(): Ajoute un service qui sera instancié une fois par requête HTTP.
  • AddTransient(): Ajoute un service qui sera instancié à chaque fois qu'il est requis.

Exemple d'utilisation de IServiceCollection

// Dans le fichier Startup.cs

public void ConfigureServices(IServiceCollection services)
{
    // Enregistrement d'un service transient
    services.AddTransient();

    // Enregistrement d'un service unique
    services.AddSingleton();
}

Dans cet exemple, on enregistre un service IUserRepository avec son implémentation UserRepository en utilisant la méthode AddTransient(). Cela signifie qu'une nouvelle instance de UserRepository sera créée à chaque fois que le service est requis.

On enregistre également un service ILogger avec son implémentation Logger en utilisant la méthode AddSingleton(). Cela signifie qu'une seule instance de Logger sera créée et utilisée tout au long de la vie de l'application.

Conclusion

IServiceCollection est un élément essentiel du développement d'applications .NET 6. En utilisant cette interface, vous pouvez configurer et gérer les dépendances de votre application de manière efficace et flexible. Enregistrez vos services et leurs implémentations dans IServiceCollection, et profitez des avantages d'une gestion de dépendances optimisée.

Featured Posts