ash*_*lon 16 .net c# serilog asp.net-core
我正在尝试调用loggerFactory.AddSerilog(); 根据此文档,但无法识别AddSerilog方法:
"错误CS1061'ILoggerFactory'不包含'AddSerilog'的定义,也没有扩展方法'AddSerilog'接受第一个......".
我正在使用ASP.NET CORE和完整的.NET框架.我究竟做错了什么?
小智 42
您可能会在project.json中忘记以下这一行
"Serilog.Extensions.Logging": "1.0.0",
另见https://carlos.mendible.com/2016/09/19/step-step-serilog-asp-net-core/
nbr*_*osz 21
不同的情况,但同样的问题.在我的例子中,我使用的是.Net Core 2.1,并且有一个对Serilog的NuGet引用,但是缺少对Serilog.AspNetCore的引用.问题首先表现为.UserSerilog()未找到Program.cs下我的CreateWebHostBuilder静态方法的IWebHostBuilder.
将Serilog.AspNetCore NuGet包添加到我的项目中解决了这个问题.
Jam*_*zba 12
发布的答案是正确的,但我想补充一点,您可能想要使用NuGet包管理器,这样您就可以获得最新版本.
右键单击解决方案
- >选择"管理解决方案的NuGet包"
- >在搜索框中输入"serilog.extensions.logging"
- >单击Serilog.Extensions.Logging并按安装
您将获得您应该选择最新版本的不同版本的下拉列表.
或者从Package Manager控制台更快地验证Default Project下拉列表是否已选择并运行您的项目
install-package Serilog.Extensions.Logging
Run Code Online (Sandbox Code Playgroud)
在 .NET Core 3.1 上,在控制台应用程序中,我只需安装serilog.extentions.hosting NuGet 包。
这会将以下行添加到YourProjectName .csproj中的ItemGroup
<PackageReference Include="Microsoft.Extensions.Hosting" Version="3.1.7" />
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11653 次 |
| 最近记录: |