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

Godot C#项目升级至C#10/.NET6后编译遇System.TypeLoadException求助

解决Godot C#项目升级到.NET 6后出现的System.TypeLoadException错误

针对你遇到的程序集不同步导致的类型加载错误,试试以下几个针对性的解决方法:

  • 检查Godot与项目的.NET版本匹配
    打开Godot编辑器的项目设置 > 常规 > .NET,确认"Runtime version"设置为.NET 6。如果当前是其他版本,切换后重启Godot,确保编辑器运行时和项目目标框架一致。

  • 重新生成Godot项目配置文件
    在Godot中执行项目 > 工具 > C# > 重新生成项目文件,让Godot重新生成适配.NET 6的.csproj和解决方案文件,彻底清除旧版本的配置残留。

  • 修正Utilities包的目标框架
    打开Utilities项目的.csproj文件,确认<TargetFramework>节点的值为net6.0,和主项目保持一致。同时检查System.Runtime的依赖版本,确保和Godot内置的版本兼容,之后重新编译Utilities包。

  • 清理Godot全局程序集缓存
    除了删除项目的obj、bin文件夹,还需要清理Godot的全局缓存:

    • Windows:%APPDATA%\Godot\mono\cache
    • macOS:~/Library/Application Support/Godot/mono/cache
    • Linux:~/.local/share/godot/mono/cache
      删除该目录下的所有文件,重启Godot后重新构建项目。
  • 确认程序集引用的正确性
    如果Utilities是本地项目,检查主项目的.csproj,确保引用的是项目而非编译后的dll,即使用<ProjectReference Include="..\Utilities\Utilities.csproj" />格式;如果是NuGet包,卸载后重新安装适配.NET 6的版本。

  • 启用详细日志定位问题
    打开编辑 > 编辑器设置 > 导出 > C#,勾选"详细构建日志",重新构建项目后查看日志,获取类型加载失败的具体细节(如缺失类型的全名、依赖链问题),进一步排查根因。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.14 00:40:43