【IIS】编译器失败,错误代码为 -2146232576

把新写的 ASP.NET MVC 代码发布到 阿里云虚拟机后,报如下错误:

编译器失败,错误代码为 -2146232576

参考了 iis 错误 -2146232576 和 asp.net mvc5本机调试正常,发布到服务器上提示编译错误,编译器失败错误代码未-2146232576 ,都是通过升级 .NET Framework 到 4.6 解决的,但是阿里云的共享云虚拟主机经过我的测试,最高支持到 4.5.1

不能升级 .NET Framework,那就只能使用低版本的包了。根据 iis 错误 -2146232576 中的说法,是由于 Microsoft.CodeDom.Providers.DotNetCompilerPlatform.dll 导致的。但其实该包从 1.0.4 ~ 1.0.8 都是同时支持 .NET Framework 4.5 和 .NET Framework 4.6 的。

  • .NET Framework 4.5 时 Microsoft.Net.Compilers (>= 1.3.2)
  • .NET Framework 4.6 时 Microsoft.Net.Compilers (>= 2.4.0)

最新的 Microsoft.CodeDom.Providers.DotNetCompilerPlatform 2.0.0 倒是没有任何依赖项,但是升级到 2.0.0 并且删除 Microsoft.Net.Compilers 包后再发布,会报一个需要 Microsoft.Net.Compilers 包的错误。

重新安装了 Microsoft.CodeDom.Providers.DotNetCompilerPlatform 1.0.8 版, 同时自动安装了依赖的最低版本 Microsoft.Net.Compilers 1.3.2。再次发布到云虚拟主机,就能正常访问了。

转载自https://www.liujiajia.me/blog/details/iis-error-2146232576

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值