定期看到ASP.NET错误CS0656:缺少编译器所需的成员

Aro*_* W. 11 c# asp.net-mvc iis-7.5

我看到我的网络应用程序偶尔会出现以下错误(看似随机).我们正在运行Windows Server 2008R2,IIS 7.5,MVC3,.NET 4.5.

编译错误

每次都是同样的错误:CS0656:缺少编译器需要成员'Microsoft.CSharp.RuntimeBinder.Binder.BinaryOperation'

发生此错误时,可能需要从重新启动应用程序池到重新安装应用程序本身,以修复它.

该错误发生在全新的VM映像(以前没有安装我们的软件),以及之前安装了我们软件的计算机上.第一次运行应用程序时,或者应用程序已经足够长时间以便IIS应用程序池回收工作进程(看起来如此)时,可能会发生此错误.

这变得非常难以处理,因为我已经对这个错误进行了大量研究,并尝试了多种解决方案,没有运气.此外,发生错误的随机频率使得故障排除非常困难.任何对这个问题的见解,或对可能的解决方案的想法,将不胜感激.我愿意在这一点上尝试几乎所有的东西.

RAM*_*RAM 0

试试林程答案:

您的 .NET Framework 是什么版本?ASP.NET MVC 3 运行时组件需要 .NET Framework 版本 4 和 Visual Studio 2010 或 Visual Web Developer 2010 Express。想要了解更多信息,请查看ASP.NET MVC 3 发行说明

编译器错误 CS0656 可能是由以下问题引起的:

  1. 您安装的公共语言运行时已损坏。

  2. 您拥有对定义类型的程序集的引用,该类型也可在公共语言运行时中找到。但是,程序集的类型并未按照 C# 编译器期望的方式定义。

因此,请检查您的引用以确保您使用的是正确版本的公共语言运行时。