我有一个记录器包装器,我想通过以下配置本身将serilog注入(inject)它:

var logger = new LoggerConfiguration()
   .WriteTo.RollingFile(
      AppDomain.CurrentDomain.GetData("DataDirectory").ToString() + "/Log-{Date}.txt")
   .CreateLogger();

我似乎找不到正确的注册方式。我要单例。以上是实例。

我尝试注册上面的实例。没有工作。我试过lambda,没用。

什么有效?任何人?

最佳答案

也许这会有所帮助:

builder.Register<ILogger>((c, p) =>
{
    return new LoggerConfiguration()
      .WriteTo.RollingFile(
        AppDomain.CurrentDomain.GetData("DataDirectory").ToString() + "/Log-{Date}.txt")
      .CreateLogger();
}).SingleInstance();

10-06 14:36