升级Logzio.DotNet.Log4net到1.0.12后添加LogzioAppender报错如何解决?
问题原因
- 该异常是Logzio.DotNet.Log4net 1.0.12版本的依赖版本不匹配导致的:此版本的
LogzioAppender代码中仍然调用了Logzio.DotNet.Core.Shipping.BulkSenderOptions类的JsonKeysCamelCase属性,但该版本依赖的Logzio.DotNet.Core库已经移除了这个属性的Get访问器,运行时找不到对应方法就会抛出MissingMethodException。 - 1.0.11版本运行正常,是因为该版本对应的Logzio.DotNet.Core依赖还保留了
JsonKeysCamelCase属性,没有出现API不兼容的问题。
解决方法
- 临时降级:将Logzio.DotNet.Log4net包回退到1.0.11版本,在Nuget包管理器中直接锁定版本即可,原有代码和配置不需要做任何修改。
- 显式指定兼容依赖版本:如果必须使用1.0.12版本,可以在项目中显式安装保留了
JsonKeysCamelCase属性的Logzio.DotNet.Core版本,避免自动拉取到不兼容的高版本Core库。 - 移除对应配置项:如果你的Log4net配置中显式设置了
JsonKeysCamelCase参数,先删除该配置项,部分场景下可以绕过该属性的调用逻辑,解决报错问题。
内容的提问来源于stack exchange,提问作者user16860574
相关产品推荐
相关产品推荐

