You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

NLog.Web.AspNetCore升级后微服务启动遇MissingMethodException求助

解决思路

核心原因

这个错误源于NLog.Web.AspNetCore 5.x依赖的NLog主版本与项目中引用的NLog版本不兼容。NLog.Web.AspNetCore 5.3.8需要搭配NLog 5.x系列主包,而你的项目大概率还残留着4.x版本的NLog——LoggingConfiguration.Variables在NLog 5.x中返回类型已变更,旧版NLog没有这个新属性定义,导致运行时找不到对应方法。

具体解决步骤

  • 同步升级NLog主包版本
    打开NuGet包管理器或使用dotnet CLI,将NLog主包升级到与NLog.Web.AspNetCore 5.3.8一致的版本:
    dotnet add package NLog --version 5.3.8
    
  • 清理项目残留文件并重建
    清除bin/obj目录下的旧编译文件,避免旧版DLL干扰:
    dotnet clean
    dotnet build --no-incremental
    
  • 排查依赖冲突
    检查是否有第三方依赖间接引入了旧版NLog,执行命令查看依赖树:
    dotnet list package NLog --include-transitive
    
    若发现冲突,要么升级该第三方包到兼容NLog 5.x的版本,要么在.csproj中强制指定NLog版本:
    <PackageReference Include="NLog" Version="5.3.8">
      <PrivateAssets>all</PrivateAssets>
      <IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
    </PackageReference>
    
  • 验证NLog配置文件兼容性
    NLog 5.x对配置语法有部分调整,检查你的nlog.config,确保变量定义、目标配置等符合5.x规范,比如旧的布局渲染器语法是否需要更新。

内容的提问来源于stack exchange,提问作者Kan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.30 03:34:52