当我使用悲观值分析模式时,我收到了数百个与空相关的警告。我想以非侵入性的方式去除它们。
比如我的源码中有一个方法,我想注释它的返回值不为null。但是,由于某种原因,我无法使用 [NotNull] 注释来执行此操作。实际上,我不能在代码中引入任何与 ide 相关的东西,例如注释或注释(以禁用一次警告)。
public string Method()
{
return "";
}
外部注释可以对已编译的程序集执行此操作,但不适用于源代码。
我可以通过配置骑手对源代码做同样的事情,或者通过插件调用一些API吗?
我无法使用 [NotNull] 注释来做到这一点
Rider 自己的可空性分析及其悲观模式的全部要点是在检查方法边界之间的代码时使用可空性注释来指导分析。悲观模式旨在与大量注释的代码一起使用,否则您将收到大量误报警告,没有其他方法可以使用 Rider 的可空性分析。
为了保持代码整洁,我建议您使用编译器自己的可空性分析 - C# 8.0 中的可空引用类型 (NRT) 功能。为项目启用 NRT 会默认将所有 API 标记为不可为空(这种情况更为常见),您只需使用
?
符号来注释可为空参数。