首页 > 解决方案 > 当参数标记为 NotNullAttribute 时,我应该如何配置 ReSharper 以不抱怨空检查

问题描述

在下面的代码片段中,ReSharper(我在 2017.3.5)会抱怨空检查“总是错误的”,并且异常抛出语句是“启发式无法访问的”。

public void Foo([NotNull] string bar)
{
    if (bar == null) throw new ArgumentNullException();

    // do something
}

我强烈认为空值检查是必要的,因为 ReSharper 只是一个注释工具而不是编译器。没有什么能阻止任何人在运行时甚至编​​译时传递空值。

有没有办法关闭它,这是一个错误,还是我在这里遗漏了什么?

标签: c#resharper

解决方案


您可以关闭“启发式无法访问代码”的代码检查规则或将其更改为提示。

转到 Resharper -> 选项。

在此处输入图像描述


推荐阅读