MAUI 项目中的 NLog.config 文件应该放在哪里?

问题描述 投票:0回答:1

我们目前开始将 vom xamarin 切换到毛伊岛。在第一步中,我想通过 NLog 实现日志记录。在遇到一些启动问题后,我让它在 iOS 上运行。当我尝试在 Android 上运行它时,出现异常“System.IO.FileNotFoundException”。

不幸的是,互联网上什么也没有——至少我没有找到。也许你们中的一些人可以帮助我。

仅供参考:目前 NLog.config 文件位于项目的根文件夹中。

(我知道在 Xamarin 中我们必须将 NLog.Config 文件放入资产中,并且毛伊岛还有一个适用于 Android 的资产文件夹。我只是希望,我们不必将同一文件两次放入一个文件中项目..)

c# maui nlog
1个回答
0
投票

所以我终于明白了。 在尝试了几个不同的位置放置配置文件和加载配置文件的位置之后,我终于找到了两者的正确位置。

幸运的是,可以将 NLog.config 文件直接放在 MAUI 项目的根文件夹中。 如果要加载配置文件,只需在 App.xaml.cs 文件中使用此语句即可。因此我使用了一种方法(我们有一个继承的基础项目)

protected override void InitializeLogger()
{
    LogManager.Setup().RegisterMauiLog().LoadConfigurationFromAssemblyResource(typeof(App).Assembly);
    _NLog = LogManager.GetCurrentClassLogger();
}

适用于 Android 和 iOS,您无需在 AppDelegate.cs (iOS) 或 MainActivity.cs (Android) 文件中指定任何内容。

© www.soinside.com 2019 - 2024. All rights reserved.