web-dev-qa-db-fra.com

AddSerilog de Serilog n'est pas reconnu

J'essaie d'appeler loggerFactory.AddSerilog (); selon la documentation this , mais la La méthode AddSerilog n'est pas reconnue:

"L'erreur CS1061 'ILoggerFactory' ne contient pas de définition pour 'AddSerilog' et aucune méthode d'extension 'AddSerilog' n'accepte une première ...".

J'utilise ASP.NET CORE avec le framework .NET complet. Qu'est-ce que je fais mal?

19
ashilon

Vous pouvez oublier cette ligne suivante dans project.json

"Serilog.Extensions.Logging": "1.0.0",

Voir aussi https://carlos.mendible.com/2016/09/19/step-step-serilog-asp-net-core/

46
Teerachai

Circonstance différente, mais même problème. Dans mon cas, j'utilisais .Net Core 2.1 et j'avais une référence NuGet à Serilog, mais il manquait une référence à Serilog.AspNetCore. Le problème s'est d'abord manifesté sous la forme .UserSerilog () introuvable pour IWebHostBuilder de ma méthode statique CreateWebHostBuilder sous Program.cs.

L'ajout du package NuGet Serilog.AspNetCore à mon projet a résolu le problème.

23
nbrosz

La réponse publiée est correcte, mais j'ajouterai que vous souhaiterez peut-être utiliser le gestionnaire de packages NuGet pour obtenir la dernière version.

Clic droit sur la solution

-> Choisissez "Gérer les packages NuGet pour la solution"

-> tapez "serilog.extensions.logging" dans le champ de recherche

-> Cliquez sur Serilog.Extensions.Logging et appuyez sur installer

Vous obtiendrez une liste déroulante des différentes versions que vous devez choisir la dernière.

Ou plus rapidement à partir de la console du Gestionnaire de packages, vérifiez que la liste déroulante Projet par défaut a sélectionné et exécuté votre projet

install-package Serilog.Extensions.Logging
14
James Wierzba