【发布时间】:2021-08-27 11:47:39
【问题描述】:
我编写了一个带有仿函数的函数,而 resharper 给了我一个“可能的 'System.NullReferenceException'”警告。
这是我的功能:
public bool MyWhere(Func<FooClass, BarStruct> functor)
{
_ = functor ?? throw new ArgumentNullException(nameof(functor));
// ... do some unrelated magic.
return true;
}
现在当我尝试使用类似的功能时
someService.MyWhere(x => x.MemberFunction);
ReSharper 为我显示警告。而且我已经尝试在函数签名中使用[JetBrains.Annotation.NotNull] 属性。
如果有人知道如何抑制这个警告,或者知道我应该在哪里进行空检查,非常感谢!
【问题讨论】:
-
我复制了提供的代码,但没有收到警告。最新的 Resharper。
-
@mxmissile 你的价值分析设置是否设置为“悲观”?
标签: c# resharper nullreferenceexception func