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

MVC项目本地正常,部署到GoDaddy后提示无法加载System.Web.Mvc程序集

解决GoDaddy虚拟主机MVC程序集加载失败的问题

嘿,我之前在GoDaddy部署MVC项目时也踩过这个坑!这种错误大多是程序集没部署全、版本不匹配或者主机环境缺失依赖导致的,给你几个亲测有效的解决办法:

  • 强制将MVC核心程序集打包到bin目录
    本地开发时我们可能依赖系统GAC里的MVC程序集,但GoDaddy的虚拟主机不一定预装了你用的5.2.3.0版本。右键项目里的System.Web.Mvc引用,在属性面板把复制本地改成True——这样编译后,MVC程序集会被自动打包到项目的bin文件夹,上传主机时就能一起部署过去。

  • 核对web.config里的程序集绑定配置
    你提到的runtime配置片段,要确保System.Web.Mvc的版本号和项目引用的完全一致,同时添加正确的版本重定向规则,避免版本冲突:

    <runtime>
      <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
        <dependentAssembly>
          <assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" culture="neutral" />
          <bindingRedirect oldVersion="0.0.0.0-5.2.3.0" newVersion="5.2.3.0" />
        </dependentAssembly>
        <!-- WebGrease等其他依赖的绑定配置也要对应项目使用的版本 -->
      </assemblyBinding>
    </runtime>
    
  • 确保所有关联依赖都部署完整
    错误提示里提到的“依赖项之一”很可能是WebGrease、Microsoft.Web.Infrastructure这类配套组件,同样把这些引用的复制本地设为True,避免主机环境缺失这些文件。

  • 清理缓存后重新发布
    有时候本地编译缓存会导致部分文件没更新,先右键项目选择「清理」,再重新生成,最后用发布工具重新打包上传,确保主机上的bin目录里所有需要的程序集都是最新的。

  • 检查主机的.NET框架版本
    登录GoDaddy控制面板,确认你的站点应用池设置的.NET版本和项目的目标框架完全一致(比如项目用.NET 4.5,主机就别选.NET 4.0),版本不匹配也会触发程序集加载失败。


内容的提问来源于stack exchange,提问作者Murat Güzel

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.27 03:33:09