频繁的VS 2010非常慢并且在特定的解决方案/文件上崩溃了吗?

时间:2012-08-28 13:29:33

标签: visual-studio-2010 c#-4.0 lambda crash

使用特定解决方案时,我的Visual Studio 2010始终会变慢或崩溃。慢一点,我的意思是慢!例如,我可以每分钟输入4-5个字符。通常UI会冻结,有时最终会崩溃。所以,基本上我无法使用该解决方案。我尝试了这些解决方案没有效果:

  1. 禁用和卸载所有扩展名。
  2. 删除.suo,bin和调试文件夹
  3. 禁用IntelliSense,文本编辑器选项......
  4. 重新启动系统
  5. 在具有相同版本的VS和Windows(7)的不同计算机上进行尝试。
  6. 有关如何修复它的想法吗?

1 个答案:

答案 0 :(得分:0)

因此,经过几个小时的尝试后,我发现在处理特定文件时会发生崩溃。特别是问题在于这行代码:

d = sd.Categories.Max(cat => cat.Subcategories.Max(d => d.Data.Where(a => a.CountryName != "World" && a.CountryName!="Asia Pacific").Max(a =>  a.AnnualData.Max(ad => ad.Value)));

显然,由于该行使用了许多lambda表达式,因此VS解析器无法有效地处理它,尽管它是一个语法和语义正确的表达式,并且它已被正确编译和执行。

解决方案:删除或注释该行,并使用一组较短的表达式来执行相同的功能。我只是使用了一些嵌套的foreach来替换表达式。