.net Generic Host Example

4 min read Jun 03, 2024
.net Generic Host Example

Le Generic Host de .NET : Un exemple simple

Le Generic Host est une fonctionnalité puissante de .NET qui fournit une manière flexible et cohérente d'héberger des applications. Il offre un point d'entrée unifié pour la configuration, le démarrage et la gestion des services, des loggers, des configurations et bien plus encore.

Un exemple simple : une application console

Pour illustrer les possibilités du Generic Host, considérons un exemple simple d'application console. Notre application affichera un message simple, "Hello World!", et utilisera un service pour le générer.

using Microsoft.Extensions.Hosting;
using Microsoft.Extensions.Logging;

namespace GenericHostExample
{
    public class HelloWorldService
    {
        private readonly ILogger _logger;

        public HelloWorldService(ILogger logger)
        {
            _logger = logger;
        }

        public string GetMessage()
        {
            _logger.LogInformation("Generating Hello World message...");
            return "Hello World!";
        }
    }

    public class Program
    {
        public static async Task Main(string[] args)
        {
            await Host.CreateDefaultBuilder(args)
                .ConfigureServices(services =>
                {
                    services.AddTransient();
                })
                .RunConsoleAsync();
        }
    }
}

Dans cet exemple, nous créons un service HelloWorldService qui génère le message "Hello World!". Le Generic Host est ensuite utilisé pour configurer et démarrer l'application.

L'appel Host.CreateDefaultBuilder crée un constructeur par défaut qui configure automatiquement plusieurs services essentiels, comme le logging, la configuration et l'injection de dépendances.

La méthode ConfigureServices est utilisée pour enregistrer notre service HelloWorldService dans le conteneur de services.

La méthode RunConsoleAsync lance l'application en tant qu'application console.

L'importance du Generic Host

Cet exemple simple montre la simplicité et la flexibilité du Generic Host. Il offre une base solide pour construire des applications .NET robustes et évolutives. Voici quelques avantages clés du Generic Host:

  • Configuration unifiée: Le Generic Host permet de configurer facilement l'application, y compris les paramètres de configuration, les services, les loggers et les dépendances.
  • Gestion de l'état de l'application: Il offre un moyen standardisé de gérer l'état de l'application, y compris le démarrage, l'arrêt et la gestion des exceptions.
  • Intégration avec d'autres technologies: Le Generic Host s'intègre bien avec d'autres technologies .NET, comme ASP.NET Core, gRPC et les API Web.

Le Generic Host est un outil puissant pour tous les développeurs .NET qui souhaitent construire des applications modernes et évolutives.

Related Post