1

我在 Visual Studio 2008 中有一个大型 C# 项目,我的项目中有近一半带有红色下划线错误,其中大部分是“未声明的元素”;该项目编译、构建、调试和运行良好,没有错误。

我也可以输入一个合法的错误,它不会在错误下划线,例如,如果我写 strong.Format() 而不是 string.Format,它不会下划线 strong????,但它会在 Format 下划线,在 string.Format 中并告诉我未声明的元素,这是没有意义的。

类似于问题:

但他从来没有得到答案,这是 VS 2008 和 C# 而不是 VS 2010 和 C++

4

3 回答 3

4

通常,当您运行 ReSharper 等工具时,您可能会遇到此问题。

它们通常依赖于 bin 目录中存在的缓存信息和 dll,如果您有一个复杂的项目并且它进入存在意外 dll 的状态或复杂的构建脚本,这些脚本需要一些魔法来移动 dll 等。

我建议使用 VS clean 解决方案命令进行清理,并清除 ReSharper或任何其他代码分析工具缓存。

如果这不起作用,你可以更深入

于 2012-11-07T21:28:10.640 回答
0

我曾多次遇到过这个问题,无论是单独使用 Visual Studio 还是使用 Resharper。在这两种情况下,我都能够通过删除整个项目并从版本控制中重新检查它来解决问题。假设您没有使用版本控制,这基本上意味着清除所有生成的文件,包括 .obj、.exe、.dll。和 .suo 文件。假设您使用 Resharper,还要删除 Resharper 目录。

(我假设您的源代码树中的所有可执行文件都已生成。显然,如果未生成它们,您不想删除它们。)

于 2012-11-07T17:50:58.580 回答
-2

我有同样的问题,在我的情况下,它主要与库中定义的库函数和类型有关。这个为我修好了:

打开命令行参数。您可以使用以下方法到达那里:

Project> *ProjectName* Properties> Configuration Properties> Linker>Command Line

在底部的附加选项框中添加 /I "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\include"

您当然需要安装 Visual Studio 的正确路径。根据需要添加尽可能多的路径,每个路径都有一个单独的/I

答对了!我希望它也适合你。:)

此外,如果您创建任何新的项目/解决方案,则无需将其添加到编译器选项中。它适用于新项目,或者至少对我来说是这样。典型的微软东西......:S

于 2012-06-13T06:42:53.813 回答