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

创建Alexa技能后端Azure Function编译报错:无法加载Newtonsoft.Json

解决Azure Function + AlexaSkillsKit.NET编译时Newtonsoft.Json版本缺失问题

嘿,这个问题我之前帮同事排查过,本质就是Newtonsoft.Json的版本依赖冲突——AlexaSkillsKit.NET明确依赖7.0.0.0版本,但你的Azure Function项目要么没装这个版本,要么装了其他版本导致运行时找不到指定的程序集。给你几个实用的解决步骤:

  • 直接安装指定版本的Newtonsoft.Json
    右键你的Azure Function项目,选择「管理NuGet程序包」,搜索Newtonsoft.Json,找到7.0.0版本并安装。如果已经安装了更高版本,先卸载再安装这个精确版本,避免版本冲突。

  • 添加程序集绑定重定向(保留高版本的情况下)
    如果你项目里其他组件需要更高版本的Newtonsoft.Json,不想回退,可以在项目的app.config(或web.config)里添加重定向配置,让运行时自动把对7.0.0.0的请求映射到你实际安装的版本。比如你装的是13.0.0.0,配置如下:

    <configuration>
      <runtime>
        <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
          <dependentAssembly>
            <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral" />
            <bindingRedirect oldVersion="0.0.0.0-13.0.0.0" newVersion="13.0.0.0" />
          </dependentAssembly>
        </assemblyBinding>
      </runtime>
    </configuration>
    

    记得把newVersion替换成你项目中实际引用的版本号。

  • 检查程序集的「复制本地」设置
    右键NuGet包管理器里的Newtonsoft.Json,选择「属性」,确保「复制本地」选项设置为True。这样编译时,对应的dll会被复制到输出目录,避免运行时找不到。

  • 清理缓存并重建项目
    有时候Visual Studio的缓存会导致奇怪的问题,试试:菜单栏「生成」→「清理解决方案」,然后重新生成整个项目,必要时重启Visual Studio,彻底清除残留的缓存文件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.19 04:10:50