frameworks - Serilog 和 IoC 统一
问题描述
我正在尝试将 Serilog 实现到我的项目中,但似乎无法让它工作我有这个类,我在构造函数中调用 ILogger 但也尝试在那里进行手动解析。
private readonly ILogger logger;
private ILogger logger1;
public EstoxController(ILogger logger1)
{
this.logger = IoC.Container.Resolve<ILogger>();
this.logger1 = logger1;
}
然后我在需要登录同一个类的方法中调用它
public virtual ActionResult GetEstoxQueryUrl(string id, EstoxEnvironmentType environmentType)
{
var logger3 = IoC.Container.Resolve<ILogger>();
logger.Information("test");
logger1.Information("test");
logger3.Information("testing3");
在我的容器配置中,我如下所示。
Log.Logger = new LoggerConfiguration()
.WriteTo.File("logtesting.txt", rollingInterval: RollingInterval.Day)
.CreateLogger();
IoC.Container.RegisterInstance(Log.Logger);
我似乎无法让它工作,请帮忙
解决方案
看起来您需要在注册时指定服务:
IoC.Container.RegisterInstance<ILogger>(Log.Logger);
推荐阅读
- node.js - Node.JS Express API Multiline powershell 输出到 HTTP 响应 res.send
- r - “未使用的参数:(oob = squish)”
- r - R函数加入摘要
- c - 字符串文字在传递给函数时变成空字符
- javascript - 如何获得给定功能的原始原型链?
- javascript - 无法让 NAV 按钮向右移动以做出反应
- react-native - 如何在本机反应中仅从单选按钮组更改值
- perl - 如何使用 linux 运行器安装带有 github 操作工作流的 cpanm?
- ios - 带有圆角和阴影但没有边框的 UITextField
- javascript - 如何从函数中删除事件监听器