这不一定是答案,但步骤太复杂,无法发表评论。
更新
还有几件事要尝试:
首先尝试在安全模式下运行 Visual Studio 。验证问题不是由插件引起的。
- 看看这个项目的其他机器上是否存在问题
- 重新安装3.5 .NET 框架(听起来您使用的是 v3.5)
- 查看 GAC 中的内容:在视觉 sstudio 命令提示符下运行
gacutil /l > C:\gac.txt
。检查此文件的 System.Core 内容。对于 .NET 3.5,我有一个 System.Core,它看起来像:
System.Core, Version=3.5.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089, processorArchitecture=MSIL
我还有一个 v4.0。我还安装了 .NET 4.5。无论出于何种原因,这都没有向我的机器添加新的 System.Core.dll(根据 MSDN System.Core.dll 在 v4.5 中仍然包含 System.LINQ)。
请打开项目并向我们展示 MSBUILD。您将寻找 System.Core,它是包含 System.LINQ 的程序集。
右键单击项目>选择“卸载项目”>这次再次右键单击项目选择“编辑(项目名称)”。
现在寻找对 System.Core 的引用。你有多少?它看起来像:
<Reference Include="System.Core" />
删除对 System.Core 的任何重复引用。
重新加载项目。如果问题仍然存在...
删除对 System.Core 的引用。通过“程序集”>“框架”选项卡(或我相信在 VS 2012 之前的 .NET 选项卡)重新添加引用。
从步骤 1 开始重新检查 MSBuild,如果问题仍然存在,请将引用的 MSBuild 以及引用文件夹中程序集的属性中可用的 PATH 和 RUNTIME VERSION 一起发布。