【发布时间】:2020-10-26 17:34:46
【问题描述】:
我正在尝试提高使用 Visual Studio Enterprise 2015 的程序的代码质量。错误列表为空,但如果我打开特定文件,则会显示警告。我唯一的活动过滤器是“当前项目”,所以我不明白为什么默认情况下它不显示这些警告,但只有当我打开文件本身时才会显示这些警告。如何让 VS 显示所有警告,即使是关闭的文件?
另一个问题,我做了“运行代码分析并抑制活动问题”,但我丢失了上次运行的问题。我怎样才能恢复这个抑制器?
编辑:我在打开文件时看到的警告之一如下:
RECS0065:表达式始终为假
并指这段代码:
if (sourceProject.uid == null
&& row[fieldConfig.ImportFieldName].GetType() == typeof(Guid)
&& (fieldConfig.ODataFieldName == "ProjectId"))
表达式将始终被评估为 false,因为在此阶段 sourceProject.uid 始终为 null。
现在,回到主要问题,如果我关闭文件,警告就会从错误列表中消失。即使文件没有在编辑器中打开,我也希望看到这些警告。
这是我试图清除的警告类型,基本上只是糟糕的编码。我的问题不是问如何解决错误,而是如何始终将它们可视化。
【问题讨论】:
-
寻求调试帮助的问题(“为什么这段代码不起作用?”)必须包括所需的行为、特定的问题或错误以及在问题本身中重现它所需的最短代码。没有明确问题陈述的问题对其他读者没有用处。请参阅:如何创建最小、完整和可验证的示例 - 模拟我们需要您提供更多信息才能理解您的要求。有时文件类型是相关的。
-
@TomTom 感谢您的澄清。我编辑了帖子以提供更多信息,但正如我所说,这不是一个与代码相关的问题,而是一个如何正确使用 VS 中的错误列表的问题。
-
并非如此 - 这更多地取决于某些代码分析的行为。如果您进行编译 - 错误会出现并保留吗?
-
@TomTom 不。如果在编辑器中打开文件,我只能看到警告。对我来说,VS 处理警告的方式不同(我习惯于 Eclipse)对我来说很奇怪,但我可以看到错误列表有一个“类别”列。此行为与该列有关吗?
-
@TomTom 例如,不要消失的警告有一个类别“代码中的冗余”,而消失的警告有一个类别“符号声明中的冗余”
标签: c# visual-studio optimization