使用注释禁用所有Resharper警告
本文关键字:Resharper 警告 注释 | 更新日期: 2023-09-27 18:20:10
有没有办法用一个注释禁用文件或代码段的所有Resharper警告?我正在尝试创建一些用于面试潜在候选人的编码练习,Resharper警告揭示了我希望候选人发现的问题:P抑制特定警告仍然可以清楚地表明问题所在。
我仍然希望在面试期间有Resharper,我只希望候选人能发现这个问题,而不会破坏Resharper的乐趣。
编辑:对不起,我会尽量弄清楚我想要什么。我不想永久禁用特定的Resharper警告,我只希望它不显示在一个特定的文件中,因为练习的目的是看看开发人员是否理解警告的原因。
举个例子,有一个Resharper警告要使用.Any扩展方法而不是Count()>0,我希望开发人员自己指出这一点。要禁用该警告,您必须使用以下注释:
// ReSharper disable UseMethodAny.0
围绕代码。这有点泄露了比赛的秘密。
我试图找到这样的东西:
// ReSharper disable all
我可以把它放在类的顶部,这样它就不会泄露我希望开发人员找到的东西。但我似乎找不到这样做的方法。在Resharper警告中使用数字也可以,但我不认为这样有效吗?
您可以按Ctrl+Shift+Alt+8禁用当前文件中的分析和高亮显示。
根据JetBrains博客上的这篇博客文章,在ReSharper 8中,将有一条注释可以在文件中禁用ReSharper警告。
它将是
// ReSharper disable All
注:;所有";区分大小写,其余不区分大小写。
以下内容对我有效。
- 在R#->选项->代码检查->生成代码中的生成代码区域添加"无重查器"
-
使用以下方法抑制警告:
#region No Resharper // All R# warnings are suppressed here #endregion
您也可以将SuppressMessageAttribute与ReSharper一起用作方法或类的类别和All作为checkId,如下所示。如果需要细粒度控制,这比禁用文件中的所有内容更细粒度。
使用Visual Studio 2015 Update 3和ReSharper Ultimate 10.0.2 进行测试
[SuppressMessage("ReSharper", "All")]
private void MethodWithMultipleIssues()
{
TestClass instance = null;
// You would get an "Expression is always true" message
if (instance == null)
{
Debug.WriteLine("Handle null");
}
else
{
// You would get an "Code is unreachable" message
Debug.WriteLine("Handle instance");
}
}
您必须配置ReSharper Inspections
http://www.jetbrains.com/resharper/webhelp/Code_Analysis__Configuring_Warnings.html
您可以将文件添加到ReSharpers选项菜单中的"生成的代码"列表中:
Options > CodeInspection > Generated Code