代码检查:被抑制的可空警告可能隐藏潜在问题
此检查会在使用 null-容忍运算符(! )来隐藏可空警告,而不是解决潜在可空性问题时进行报告。 提示代码依赖的某个假设在重构或 API 更改后可能不再成立。
示例
string GetName(User? user)
{
return user!.Name;
}
string GetName(User? user)
{
if (user is null)
throw new ArgumentNullException(nameof(user));
return user.Name;
}
修正方法
此检查没有专用的代码快速修复方案。 通常的修复方法是添加实际的空值检查,调整流程以确保值为非空,或者如果值确实不能为 null,则更改 API 可空性。
2026年 5月 8日