C#使用NLOG System.TypeInitializationException,类型初始值设定项引发异常

C#如何使用NLOG,网上有很多介绍,本次使用时遇到一个问题,使用NLOG写日志时,出现初始化异常,基本异常信息如下:

 

System.AggregateException: 发生一个或多个错误。 ---> System.TypeInitializationException: “xxx”的类型初始值设定项引发异常。
  ---> System.Configuration.ConfigurationErrorsException: 配置系统未能初始化 ---> System.Configuration.ConfigurationErrorsException: 无法识别的配置节。

 

异常信息中,显示无法识别的配置节点。基本能断定与NLOG的配置文件有关,而NLOG的配置文件一直再用没有更新过,所以想到NLOG的配置文件有一个搜索顺序:

当运行一个独立的*.exe客户端可执行程序时,NLog将在以下目录搜索配置信息:

  1. 标准的程序配置文件(通常为 程序名.exe.config
  2. 程序目录下的程序名.exe.nlog文件
  3. 程序目录下的NLog.config文件
  4. NLog.dll所在目录下的NLog.dll.nlog文件
  5. 如果定义了NLOG_GLOBAL_CONFIG_FILE环境变量,则该变量所指向的文件

所以,应该是搜索错了配置文件;纠正后,即可恢复使用。

小问题,特此记之。

 

转载于:https://www.cnblogs.com/Juning/p/10980250.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于C#中的NLog配置,您可以按照以下步骤进行操作: 1. 首先,在您的项目中添加NLog包。可以通过NuGet包管理器或手动引用NLog程序集来完成。 2. 在项目的根目录下创建一个名为"NLog.config"的文件,该文件将包含NLog的配置信息。 3. 打开"NLog.config"文件,并按照您的需求进行配置。配置文件使用XML格式,您可以定义日志记录器、目标和规则等。 下面是一个简单的NLog配置示例: ```xml <?xml version="1.0" encoding="utf-8" ?> <nlog xmlns="http://www.nlog-project.org/schemas/NLog.xsd" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> <!-- 定义日志记录器 --> <targets> <target name="console" xsi:type="Console" /> <target name="file" xsi:type="File" fileName="log.txt" /> </targets> <!-- 定义规则 --> <rules> <logger name="*" minlevel="Trace" writeTo="console" /> <logger name="*" minlevel="Debug" writeTo="file" /> </rules> </nlog> ``` 在上面的示例中,我们定义了两个目标:一个是控制台输出(target name="console"),另一个是写入文件(target name="file")。然后,我们定义了两条规则:一条是将所有日志记录到控制台(writeTo="console"),另一条是将所有Debug级别及以上的日志记录到文件(writeTo="file")。 请注意,这只是一个简单的示例配置。您可以根据自己的需求进行更复杂的配置,例如添加过滤器、使用不同的目标等。 完成配置后,您可以在代码中使用NLog进行日志记录。例如: ```csharp using NLog; class Program { private static Logger logger = LogManager.GetCurrentClassLogger(); static void Main(string[] args) { logger.Info("Hello, NLog!"); logger.Error("An error occurred."); // 其他日志级别:Debug, Warn, Fatal, Trace } } ``` 以上是一个简单的介绍,您可以根据自己的需要进行更详细的配置和使用

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值