.net 6 Background Service Example

4 min read Jun 03, 2024
.net 6 Background Service Example

Créer un service d'arrière-plan avec .NET 6

Introduction

.NET 6 offre une variété d'options pour créer des services d'arrière-plan qui peuvent s'exécuter en arrière-plan et effectuer des tâches régulières. Ces services sont idéaux pour des scénarios tels que la surveillance, la planification, l'intégration avec des systèmes externes et bien plus encore. Dans cet article, nous allons explorer un exemple concret de création d'un service d'arrière-plan en utilisant .NET 6.

Définir le service d'arrière-plan

Commençons par créer un nouveau projet .NET 6. Vous pouvez utiliser l'interface de ligne de commande (CLI) .NET pour cela:

dotnet new console -n MyBackgroundService

Remplacez MyBackgroundService par le nom souhaité pour votre projet.

Ensuite, ajoutez le package NuGet Microsoft.Extensions.Hosting à votre projet. Cela vous fournira les outils nécessaires pour gérer votre service d'arrière-plan.

dotnet add package Microsoft.Extensions.Hosting

Implémenter le service d'arrière-plan

Créez une nouvelle classe qui hérite de BackgroundService :

using Microsoft.Extensions.Hosting;
using System;
using System.Threading;
using System.Threading.Tasks;

namespace MyBackgroundService
{
    public class MyBackgroundTask : BackgroundService
    {
        protected override async Task ExecuteAsync(CancellationToken stoppingToken)
        {
            while (!stoppingToken.IsCancellationRequested)
            {
                // Effectuez votre logique de service d'arrière-plan ici
                Console.WriteLine("Service d'arrière-plan en cours d'exécution à {0}", DateTime.Now);

                // Attendre pendant une certaine durée
                await Task.Delay(5000, stoppingToken); 
            }
        }
    }
}

Dans la méthode ExecuteAsync, vous pouvez implémenter la logique de votre service d'arrière-plan. Dans cet exemple, nous affichons un message dans la console et attendons 5 secondes avant de recommencer.

Configuration du service

Modifiez le fichier Program.cs pour configurer votre service d'arrière-plan. Ajoutez le code suivant à la méthode CreateHostBuilder:

public static IHostBuilder CreateHostBuilder(string[] args) =>
    Host.CreateDefaultBuilder(args)
        .ConfigureServices((hostContext, services) =>
        {
            // Ajouter le service d'arrière-plan au conteneur de services
            services.AddHostedService(); 
        });

Exécuter le service

Vous pouvez maintenant exécuter votre service d'arrière-plan en utilisant la commande suivante dans la console:

dotnet run

Le service d'arrière-plan s'exécutera en arrière-plan et affichera les messages dans la console toutes les 5 secondes.

Conclusion

Cet article vous a présenté un exemple simple de création d'un service d'arrière-plan avec .NET 6. Vous pouvez l'utiliser comme point de départ pour développer des services plus complexes et personnalisés en fonction de vos besoins spécifiques. N'oubliez pas que vous pouvez ajouter des fonctionnalités supplémentaires à votre service d'arrière-plan telles que la communication avec des bases de données, l'intégration avec des API externes, la gestion des erreurs, etc.

Featured Posts