Visual Studio编译精细,但仍然显示红线

时间:2014-01-13 18:10:32

标签: c# .net visual-studio visual-studio-2012

我正在使用VS 2012,它一切正常,直到我开始观察一些有趣的行为。当我打开我的代码时,它显示红色下划线,当我们的代码中出现错误时,我们通常会看到这些下划线。令人惊讶的是,代码编译得很好。我做了以下根本不正常的观察。

  1. 代码中的红色下划线
  2. 清洁或构建解决方案时没有错误。
  3. red下划线在我构建/清理解决方案后会消失一段时间但最终会回来。
  4. 因此我的intellisense停止了工作。
  5. 我无法右键单击任何组件并转到其定义。
  6. 有什么想法吗?

21 个答案:

答案 0 :(得分:128)

Visual Studio 2017:

关闭Visual Studio并删除解决方案目录中的.vs文件夹,为我工作。

此文件夹具有hidden属性。您可能需要更改文件夹选项中的设置以显示隐藏文件。

答案 1 :(得分:37)

删除临时ASP.NET文件夹的内容,然后重建。它将位于您的用户文件夹中(对于 IIS Express - \ AppData \ Local \ Temp \ Temporary ASP.NET Files )或Windows目录(对于 IIS - C:\ Windows \ Microsoft.Net \ Framework \ vx.xx \ Temporary ASP.NET Files

路径偏离我的头脑,可能不正确

答案 2 :(得分:9)

使用在Visual Studio 2012中创建但在2013年运行的解决方案时遇到此问题。我关闭了Visual Studio,删除了所有\ bin和\ obj目录,问题就消失了。

答案 3 :(得分:7)

我知道这是旧的,但万一人们发现这个帖子就像我从谷歌那样。在解决了svn的一些冲突之后,我遇到了这个问题。该解决方案中有几个项目,我在几个不同的项目中解决了一些冲突。我做了一个Build - >清洁解决方案,然后是Build - >重建解决方案,一切都很好。

答案 4 :(得分:5)

你有像resharper一样安装的插件吗?我有一个插件坏的问题。

尝试在安全模式下运行visual studio,以防止插件运行。

devenv /Safemode

答案 5 :(得分:4)

对我来说,当我再次卸载并重新加载项目时,此问题得到修复。我为我工作,希望它也适合你:)

答案 6 :(得分:3)

我有这个问题,它与ReSharper有关。

我的解决方案步骤:

1)禁用ReSharper

VisualStudio\Tools\Options\ReSharper Ultimate\General\Suspend Now

2)构建解决方案

(Ctrl-Shift-B)

3)ReEnable ReSharper

VisualStudio\Tools\Options\ReSharper Ultimate\General\Resume Now

史蒂夫

答案 7 :(得分:2)

在vs2013中,我通过删除所有项目中的所有obj / bin文件夹解决了这个问题。问题可能是由于我已删除的解决方案配置,但尚未正确清理,因为正在进行构建 - > Clean Solution不会从obj / bin文件夹中删除旧输出。

答案 8 :(得分:2)

如果您使用像我这样的Resharper,您可以通过以下链接删除resharper缓存:https://www.jetbrains.com/help/resharper/Configuring_Caches_Location.html

To specify the location for caches

1. Open the Environment | General page of ReSharper options.
2. Use the Save solution caches in to select the location for cache files:
3. User local settings folder to store them in the following directory: %LOCALAPPDATA%\JetBrains\Transient
4.System TEMP folder to store them in the following directory: %TEMP%\ReSharperCache
5. Solution folder to store them in the root folder of the current solution
6. Custom folder to choose a custom location for ReSharper cache files.
7. Click Save to apply the modifications and let ReSharper choose where to save them, or save the modifications to a specific settings layer using the Save To drop-down list. For more information, see managing and sharing resharper settings.
8. Reopen your solution for the changes to take effect.

答案 9 :(得分:1)

对我有用的是删除IntelliSense索引文件。

IntelliSense文件与解决方案位于同一目录中。

它的文件名是SolutionName.sdf

只需删除此文件,再次打开解决方案,IntelliSense将开始重建其索引文件。之后问题就会消失。

答案 10 :(得分:1)

这在Visual Studio Enterprise 2017中对我有用:

  1. 导航到“工具”>“选项”>“文本编辑器”>“ JavaSCript / TypeScript”>“ Linting”>“常规”

  2. 取消选择“启用ESLint”

答案 11 :(得分:1)

只需刷新项目/解决方案。它将解决。

答案 12 :(得分:0)

也许现在添加已经很晚了,但希望它可能仍然有助于某人。当我在几个文件中看到很多红色波浪时,我遇到了类似的问题。我尝试了上面提出的所有答案,但似乎没有任何效果。当我开始浏览类,其他文件中的抱怨文件引用的结构时,问题就消失了。似乎intellisense由于某种原因无法自行解决依赖关系。

答案 13 :(得分:0)

对我来说,我曾经一度启用了融合日志来调试一些程序集依赖性错误(来自CMD提示符的fuslogvw)。那是几个月前,我从那时起经历了更慢的构建时间(5-7分钟)。我也完全忘记了我让它们启用了。这些日志是我的瓶颈,禁用它们使迭代更快。希望这有助于某人!

答案 14 :(得分:0)

我使用最新的Visual Studio 2017遇到了这个问题 我的程序的调试版本也运行缓慢。

我删除了解决方案文件.sln并创建了一个新文件。

答案 15 :(得分:0)

有效的步骤

  1. 打开解决方案并重新构建所有内容
  2. 关闭解决方案
  3. 打开解决方案并进行清洁
  4. 关闭解决方案
  5. 打开解决方案并重新构建所有内容
  6. 关闭然后打开解决方案,它应该很好。每次都对我有用

请谨慎删除其中的一些设置文件,因为您将丢失已保存的调试设置等,并且可能会造成超出预期的破坏

答案 16 :(得分:0)

我也遇到了这个问题,并且可以通过执行以下操作使Visual Studio返回其正常状态-

  1. 识别红线代码来自的项目
  2. 从正在使用的引用中删除红线项目(ProjectName \ References-右键单击,添加引用,取消选中红线项目)
  3. 构建(您现在应该会得到错误)
  4. 重新添加刚刚删除的项目引用
  5. 再次构建
  6. 应删除红线,并应建立项目!

答案 17 :(得分:0)

我在几个* cpp源文件中也有很多红线的问题。虽然代码编译完美。没有其他解决方案对我有用。

更改* .cpp文件的#include行的顺序可能会使红线消失-并使用恢复的顺序重新包装。

然后,我注意到在一个* .cpp文件中两次包含了一个头文件。我删除了第二个,并且-一切都很好。

在同一个* .cpp文件中包含两次头文件似乎对编译器没有问题,但对智能部分来说却没有问题。

答案 18 :(得分:0)

就VS 2017而言,我在第三方库中定义的所有符号下方都有许多“红线”显示,但我的项目实际上可以毫无问题地构建。我已经尝试了所有建议的解决方案(例如删除.VS文件夹,重新启动VS等),但是没有一个起作用。

最后,我修复了它,这是这样的:打开应用程序项目的属性页,然后转到“ C / C ++->常规->其他包含目录”,在该位置放置了所有需要的第三方库标头路径。我删除了所有路径(但是将它们保存在某处),单击“确定”进行确认。然后我回到相同的设置,将这些路径粘贴回去,单击“确定”确认,然后所有这些“红线”消失。

答案 19 :(得分:0)

找到了这个解决方案:

  1. 关闭Visual Studio(确保任务管理器中没有devenv.exe)。
  2. 删除%USERPROFILE%\AppData\Local\Microsoft\VisualStudio\xx\ComponentModelCache目录。
  3. 重新启动Visual Studio。

答案 20 :(得分:0)

这个问题我已经有好几个月了,终于解决了。关闭Visual Studio并删除解决方案目录中的.vs文件夹对我而言不起作用。

web.config中有一个assemblyIdentity标记,该标记引用的是我的references文件夹中没有的库。我删除了此标签,对其进行了清洁,关闭和重新打开,此问题已得到解决。

  1. 检查web.config中的每个assemblyIdentity标记,并根据解决方案资源管理器中的references文件夹对其进行检查
  2. 删除所有assemblyIdentity标记,包括未在您的引用文件夹中列出的所有父标记的dependentIssembly标记。
  3. 清洁溶液
  4. 关闭并重新打开解决方案