lechediaz / HostedServices

Ejemplos de uso de IHostedService en .Net Core

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Descripción

En este repositorio se busca demostrar dos formas de mantener tareas trabajando en segundo plano en .Net Core, bien sea en un IWebHost o un IHost, para ello, contamos con los siguientes proyectos:

  • LogHostedService: Es una biblioteca de clases y este se encuentra la clase LogHostedService, ésta básicamente lo que hace es que mientras el proceso principal esté corriendo, escribirá un mensaje personalizado en un archivo un texto.

    En el proyecto de destino es importante configurar la sección LogHostedServiceSettings, por ejemplo en appsettings.json:

    {
        "LogHostedServiceSettings": {
            "IntervaloSegundos": 10,
            "Mensaje": "Realicé una operación en segundo plano :)",
            "RutaArchivo": "C:\\Users\\david\\Documents\\Logs\\LogHostedService.txt"
        }
    }
    

    Los valores de la claves indican:

    • IntervaloSegundos: Intervalo en segundos para escribir el mensaje en el log.
    • Mensaje: Mensaje a esribir en el log.
    • NombreArchivo: Ruta completa donde se debe escribir el log.
  • WebApi: Consiste en una Web API generada desde la plantilla por defecto, pero que registra el LogHostedService para que escriba el archivo de log mientras el Web API está ejecutandose en IIS, por ejemplo.

  • WorkerService: Es un proyecto generado a partir de la plantilla por defecto llamada de la misma forma, con la diferencia que registra el LogHostedService para que escriba el archivo mientras el proceso se está ejecutando.

Recursos adicionales

About

Ejemplos de uso de IHostedService en .Net Core


Languages

Language:C# 100.0%