zoukankan      html  css  js  c++  java
  • Abp.Castle.Log4Net : Method 'get_IsTraceEnabled' does not have an implementation

    异常内容

    System.TypeLoadException
      HResult=0x80131522
      Message=Method 'get_IsTraceEnabled' in type 'Abp.Castle.Logging.Log4Net.Log4NetLogger' 
      from assembly 'Abp.Castle.Log4Net, Version=4.5.0.0, Culture=neutral, PublicKeyToken=null' 
      does not have an implementation.
      Source=Abp.Castle.Log4Net
      StackTrace:
       at Abp.Castle.Logging.Log4Net.Log4NetLoggerFactory.Create(String name)
       at Castle.Facilities.Logging.LoggingFacility.RegisterDefaultILogger(ILoggerFactory factory)
       at Castle.Facilities.Logging.LoggingFacility.Init()
       at Castle.MicroKernel.DefaultKernel.AddFacility(String key, IFacility facility)
       at Castle.Windsor.WindsorContainer.AddFacility[T](Action`1 onCreate)
    

    解决思路

    因为GitHub上有ABP的源码:aspnetboilerplate,准备看源码,这个方法不建议推荐,比较花时间,很可能费力不讨好。但是搞清楚之后肯定有助于加深对ABP的理解。为了最快解决问题,从想想bug怎么出现倒推解决办法。我是因为更新了解决方案的nuget包。这就好说了。解决办法:试着降级nuget包。

    我是将 Abp.Castle.Log4Net 从4.3升级到了4.5 。一步到位,降级到4.3 ,信心满满的debug,异常依旧。我想或许会有人提Issue,没有我就自己提Issue。搜索Issue:https://github.com/aspnetboilerplate/aspnetboilerplate/search?q=get_IsTraceEnabled&type=Issues ,搜索结果显示已经有人提了 Issue。 Issue 4445:: System.TypeLoadException: Method 'get_IsTraceEnabled'
    该Issue的解决方案是同时降级 Abp.Castle.Log4Net 和 Castle.Core
    在这里插入图片描述
    既然单单降级Abp.Castle.Log4Net不行,私以为问题在Castle.Core。尝试将Abp.Castle.Log4Net包依然升级到4.5,只降级Castle.Core到4.3.1 。速度debug,bug解决。看来问题是因为Abp.Castle.Log4Net对应的应该是Castle.Core 4.3.1。想要搞明白真正的问题得去看Castle的源码了。

    一句话总结解决方案:将Castle.Core降级到4.3.1

  • 相关阅读:
    简单的JAVAWeb选课系统
    公文流转系统001
    第九周动手动脑
    JAVA文件操作
    动手动脑-异常处理
    个人NABCD
    水王(课堂作业)
    软件学习进度表07
    软件工程学习进度表06
    软件工程个人作业05(二维数组求最大子数组的和)
  • 原文地址:https://www.cnblogs.com/AlienXu/p/10770003.html
Copyright © 2011-2022 走看看