在使用 dotnet core 版本的 WPF 可以将发布文件打包为一个exe文件,但是此时小伙伴发现 log4net 无法运行,因为 log4net 说找不到配置文件
这是 子铭 小伙伴问我的问题,我尝试创建一个 dotnet core 的 WPF 程序,使用下面代码创建的
在从另一个项目复制了 log4net 的配置的时候,我发现了一个细节,在运行 log4net 默认会读取 Log.config 配置文件,而读取的文件夹是应用程序所在的文件夹,如果通过下面代码将软件发布单文件,那么因为 log4net 需要读取而配置文件找不到而不能使用
解决方法是
- 启动时写入配置文件
- 重定向配置文件
- 通过代码配置
- 不用log4net都成
关于写日志请看 程序猿修养 日志应该如何写
本作品采用 知识共享署名-非商业性使用-相同方式共享 4.0 国际许可协议 进行许可。 欢迎转载、使用、重新发布,但务必保留文章署名 林德熙 (包含链接: https://blog.lindexi.com ),不得用于商业目的,基于本文修改后的作品务必以相同的许可发布。如有任何疑问,请与我 联系。