尝试从appsettings.json读取Serilog配置

3

我正在将一个c#项目转换为.Net Core(不是ASP.Net Core),但无法编译Serilog网站上发布的示例。我一定是漏掉了一些简单的东西。我试图从appsettings.json中读取Serilog配置。以下是该网站上的代码:

    var configuration = new ConfigurationBuilder()
        .AddJsonFile("appsettings.json")
        .Build();

    var logger = new LoggerConfiguration()
        .ReadFrom.Configuration(configuration)
        .CreateLogger();

我遇到的问题是.Build()返回了一个Microsoft.Framework.Configuration.IConfigurationRoot对象,而ReadFrom.Configuration()需要一个Microsoft.Extensions.Configuration.IConfiguration对象。我尝试使用Microsoft.Extensions.Configuration.ConfigurationBuilder(),但没有.AddJsonFile()方法。是否有其他人使用过这段代码并能指导我正确的方向?非常感谢您的帮助。
1个回答

1

看起来你可能安装了旧版本的Serilog.Settings.Configuration或其他一些包 - 任何对Microsoft.Framework.*的引用都是旧的1.0版本之前的包,不适用于当前的.NET Core版本。

特别是,请确保没有任何包引用Microsoft.Framework.Configuration,并升级任何引用该包的包。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接