我在ASP.NET C#MVC项目中遇到了问题。
我们正在使用.NET Framework 4.0进行开发,最近我将Visual Studio升级到2012(其他人都在使用2010),现在它停止了工作。现在在某些地方我收到错误:
Operation could destabilize the runtime.
我发现有些人说这与.NET 4.5与Visual Studio 2012一起安装有关,但我还没找到解决问题的方法。它抱怨的代码行看起来像这样:
var companyModel = from c in db.Company select c;
return View(companyModel.ToPagedList(page, 10));
这段代码怎么了? companyModel成为
System.Linq.IQueryable<Company>
我尝试添加
companyModel.OfType<Company>();
在这两行之间,但它也没有用(来自Operation could destabilize the runtime?的想法)
使用Visual Studio 2010,一切正常。谢谢!
答案 0 :(得分:3)
获取最新版本的PagedList,应该修复它。我遇到了同样的问题。
答案 1 :(得分:0)
您所听到的是正确的,安装VS2012安装.Net 4.5,它覆盖.Net 4.0。如果您没有进行其他Windows更新(即.Net 4.5更新),则可能与框架中的错误有关。
请参阅此修补程序: http://support.microsoft.com/kb/2748645
更新的第三方代码可能会使用其中一种解决方法。
你可能想要阅读有关人们的祸患,.Net 4.5是对.Net 4.0的现场升级。如果您的整个团队没有升级到VS2012(并且您的目标是.Net 4.0框架),您可能需要考虑回滚机器而不是升级到VS2010。
它可能不适用于您的MVC应用程序,但如果您现在拥有.Net 4.5的客户端环境开发任何应用程序,请务必谨慎。无论Visual Studio告诉您什么,您都不再“瞄准”.Net 4.0。
How to keep .Net 4.0 behavior if .Net 4.5 is installed?