【发布时间】:2022-01-16 06:49:02
【问题描述】:
我是 C# 新手,我正在尝试在 WCF 应用程序中使用 serilog。此 WCF 应用程序托管在 IIS 6.0 上。
我只需要在服务初始化时创建一次记录器。但是 WCF 似乎没有构造函数。如何仅在下面创建一次记录器并将其提供给应用程序的其余部分。任何代码示例将不胜感激。
ILogger logger = new LoggerConfiguration()
.ReadAppSettings()
.CreateLogger();
Log.Logger = logger;
我考虑过使用 App_Code 文件夹中的 AppInitialize,但我似乎无法让程序触发 AppInitialize 方法。
public class InitializeApp
{
public static void AppInitialize()
{
ILogger logger = new LoggerConfiguration()
.ReadAppSettings()
.CreateLogger();
Log.Logger = logger;
}
}
当我在 Visual Studio 2019 中运行项目时,AppInitialize 永远不会受到影响。
【问题讨论】:
-
这能回答你的问题吗? Running a function on WCF start up
-
你也可以看看this post。