代码检查:声明的为 null 性已推断(参数被推断为非空).
此检查会报告在控制流分析中被推断为永远不会 null 的参数。 典型情况是参数被立即解除引用、通过 ArgumentNullException 验证,或在整个方法体内始终作为非空值使用。 添加 [NotNull] 使该约定对调用者和 static 分析都显式。
示例
在此示例中, text 参数通过 ArgumentNullException 验证。 快速修复建议添加 [NotNull] 特性。
using System;
public class Parser
{
public void Parse(string text)
{
if (text == null)
throw new ArgumentNullException(nameof(text));
Console.WriteLine(text.Length);
}
}
using System;
using JetBrains.Annotations;
public class Parser
{
public void Parse([NotNull] string text)
{
if (text == null)
throw new ArgumentNullException(nameof(text));
Console.WriteLine(text.Length);
}
}
快速修复
使用推断的为 null 性特性对参数进行注解,通常为 [NotNull]。 对于类似容器的参数,快速修复可使用 [ItemNotNull] 代替。
2026年 5月 8日