登录 .net MAUI

Logging on .net MAUI

.net MAUI 最近删除了其最新版本之一的登录。现在有什么替代方案,应该如何实施?一直在网上到处走,但找不到任何已实现的日志体系结构的示例。尝试了 log4netNLog,但最后都没有设置好。在 MAUI 上设置任何登录的在线示例有 0 个。

此外,在 MauiProgram 中看到了 builder.Services.AddLogging()builder.Logging.Services,它们应该与依赖注入一起工作,但也找不到该实现的任何 Maui 示例。

现在应该如何在 MAUI 中设置基本日志记录?

首先添加对 Microsoft.Extensions.Logging.Debug 的引用。如果您只想在调试模式下使用它,您可以这样做:

<ItemGroup Condition="'$(Configuration)' == 'Debug'">
  <PackageReference Include="Microsoft.Extensions.Logging.Debug" Version="6.0.0" />
</ItemGroup>

然后当应用程序启动时:

var builder = MauiApp.CreateBuilder();
// ...
#if DEBUG
    builder.Services.AddLogging(configure =>
    {
         configure.AddDebug();
    });
#endif

您还可以添加过滤器:

#if DEBUG
    builder.Services.AddLogging(configure =>
    {
        configure.AddDebug()
            .AddFilter("MyCompany.MyApp.Namespace", LogLevel.Trace)
            .AddFilter("Microsoft", LogLevel.Warning);
    });
#endif