Visual Studio 2017无法解析任何using语句

时间:2018-04-20 12:19:17

标签: .net visual-studio visual-studio-2017

我现在使用Visual Studio 2017(Enterprise,15.6.6),似乎无法正确加载解决方案。我的环境的一个特定的,简单的repro是打开Visual Studio并创建一个新的" ASP.NET核心Web应用程序(Visual C#)",子类型" API"没有身份验证或docker支持。

如果我再打开Startup.cs,我会在所有using指令下面都会看到一个充满红色波浪线的屏幕,以及来自这些命名空间的相应内容:

red squiggly lines everywhere

如果我恢复NuGet包,它会说出以下几点:

  

恢复在52,93毫秒内完成.... WebApplication1.csproj。

如果我构建解决方案,我会收到一堆关于未找到引用的错误。然后我检查了" Build"输出窗口,它在这些方面说了些什么:

------ Build started: Project: WebApplication4, Configuration: Debug Any CPU ------
[...] The "ResolveAssemblyReference" task failed unexpectedly.
[...] Microsoft.Build.Shared.InternalErrorException: MSB0001: Internal MSBuild Error: Unexpected CopyLocal flag.
[...]    at Microsoft.Build.Tasks.CopyLocalStateUtility.IsCopyLocal(CopyLocalState state)
[...]    at Microsoft.Build.Tasks.ResolveAssemblyReference.LogResults(ReferenceTable dependencyTable, DependentAssembly[] idealAssemblyRemappings, AssemblyNameReference[] idealAssemblyRemappingsIdentities, ArrayList generalResolutionExceptions)
[...]    at Microsoft.Build.Tasks.ResolveAssemblyReference.Execute(FileExists fileExists, DirectoryExists directoryExists, GetDirectories getDirectories, GetAssemblyName getAssemblyName, GetAssemblyMetadata getAssemblyMetadata, GetRegistrySubKeyNames getRegistrySubKeyNames, GetRegistrySubKeyDefaultValue getRegistrySubKeyDefaultValue, GetLastWriteTime getLastWriteTime, GetAssemblyRuntimeVersion getRuntimeVersion, OpenBaseKey openBaseKey, GetAssemblyPathInGac getAssemblyPathInGac, IsWinMDFile isWinMDFile, ReadMachineTypeFromPEHeader readMachineTypeFromPEHeader)
[...]    at Microsoft.Build.Tasks.ResolveAssemblyReference.Execute()
[...]    at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
[...]    at Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__26.MoveNext()
1>Done building project "WebApplication4.csproj" -- FAILED.
========== Build: 0 succeeded, 1 failed, 0 up-to-date, 0 skipped  ==========

每行开头的缩写位(不确定它是否相关)是:

C:\Program Files (x86)\Microsoft Visual Studio\2017\Enterprise\MSBuild\15.0\Bin\Microsoft.Common.CurrentVersion.targets(2052,5): error MSB4018: 

现在我最近可能做的事情就是出现这种情况。我怀疑的一些事情是:

  • 我已经更新了Chocolatey的Nuget.CommandLine软件包
  • 我试图在VSCode中进行一些.NET Core开发
  • 我已将Visual Studio升级到最新版本(15.6.6)
  • 我最近更新了VSCode
  • 我定期运行Windows更新
  • 我最近更新了NPM
  • 我最近在我的笔记本电脑醒来的时候有一个BSOD(当时有Visual Studio打开)

我不知道问题是什么,或者更重要的是:我怎么能找出问题所在。 所以我的主要问题是:如何解决这个特定的问题?如果不这样做,我的问题是如何解决这种情况(虽然我怀疑可能有多种原因)。

1 个答案:

答案 0 :(得分:1)

在写完问题后,我做了一些冰雹玛丽修复,包括清除这个:

c:\users\jeroen\.nuget\packages\*.*

这在技术上只回答第二个问题。我发布这个是因为它可能对某些人有所帮助,但我仍然没有注意到实际原因或解决此类问题的良好启发式方法,并希望看到另一个更好的答案。