使用注释禁用所有Resharper警告

时间:2012-01-13 17:28:49

标签: c# resharper

有没有办法通过一条注释禁用文件或代码段的所有Resharper警告?我正在尝试创建一些编码练习来采访潜在的候选人,而Resharper警告会消除我希望候选人发现的问题:P抑制特定警告仍然可以明显解决问题所在。

我仍然希望在采访期间可以使用Resharper,我只是希望候选人能够在没有Resharper破坏乐趣的情况下发现这个问题。

编辑:抱歉,我会尝试更清楚地了解自己的目标。我不想永久禁用特定的Resharper警告,我只是希望它不显示在一个特定的文件中,因为练习的目的是看开发者是否理解警告的原因。

举一个例子,有一个Resharper警告使用.Any扩展方法而不是Count()> 0,我希望开发人员指出自己。要禁用该警告,您必须使用以下注释:

// ReSharper disable UseMethodAny.0

围绕代码。那种让游戏稍稍偏离。

我试图找到类似的东西:

// ReSharper disable all

我可以放在班级的顶部,所以它不会泄露我想让开发人员找到的东西。但我似乎找不到办法做到这一点。使用Resharper警告的数字也可以,但我不认为它的工作方式是这样的吗?

6 个答案:

答案 0 :(得分:43)

Nial,您可以按 Ctrl + Shift + Alt + 8 来禁用当前文件中的分析和highligtings。

答案 1 :(得分:36)

根据JetBrains博客上的this blog post,在ReSharper 8中,将会有一条注释可以禁用文件中的resharper。

将是

// ReSharper disable All

注意:“全部”区分大小写,其余部分不区分。

答案 2 :(得分:5)

以下对我有用。

  • 在R#中生成的代码区域中添加“No Resharper” - >选项 - >代码检查 - >生成的代码
  • 使用以下内容禁止警告:

    #region No Resharper
    
    // All R# warnings are suppressed here
    
    #endregion
    

答案 3 :(得分:2)

答案 4 :(得分:2)

您可以将文件添加到ReSharpers选项菜单中的“生成代码”列表中:

Options > CodeInspection > Generated Code

答案 5 :(得分:2)

您还可以将SuppressMessageAttribute ReSharper 一起用作类别,将全部用作 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");
    }
}