使用“is null”检查 (IDE0041)
属性 | 值 |
---|---|
规则 ID | IDE0041 |
标题 | 使用“is null”检查 |
类别 | Style |
Subcategory | 语言规则(表达式级首选项) |
适用的语言 | C# 和 Visual Basic |
引入的版本 | Visual Studio 2017 |
选项 | dotnet_style_prefer_is_null_check_over_reference_equality_method |
概述
此样式规则涉及是使用带模式匹配的 null 检查,还是使用相等运算符 (==
) 或调用引用 Object.ReferenceEquals(Object, Object)。
选项
选项指定你希望规则强制实施的行为。 若要了解如何配置选项,请参阅选项格式。
dotnet_style_prefer_is_null_check_over_reference_equality_method
属性 | 值 | 说明 |
---|---|---|
选项名称 | dotnet_style_prefer_is_null_check_over_reference_equality_method | |
选项值 | true |
首选 is null 检查 |
false |
首选引用相等性方法 | |
默认选项值 | true |
// dotnet_style_prefer_is_null_check_over_reference_equality_method = true
if (value is null)
return;
// dotnet_style_prefer_is_null_check_over_reference_equality_method = false
if (object.ReferenceEquals(value, null))
return;
// dotnet_style_prefer_is_null_check_over_reference_equality_method = false
if ((object)o == null)
return;
' dotnet_style_prefer_is_null_check_over_reference_equality_method = true
If value Is Nothing
Return
End If
' dotnet_style_prefer_is_null_check_over_reference_equality_method = false
If Object.ReferenceEquals(value, Nothing)
Return
End If
' dotnet_style_prefer_is_null_check_over_reference_equality_method = false
If CType(value, Object) = Nothing
Return
End If
抑制警告
如果只想抑制单个冲突,请将预处理器指令添加到源文件以禁用该规则,然后重新启用该规则。
#pragma warning disable IDE0041
// The code that's violating the rule is on this line.
#pragma warning restore IDE0041
若要对文件、文件夹或项目禁用该规则,请在配置文件中将其严重性设置为 none
。
[*.{cs,vb}]
dotnet_diagnostic.IDE0041.severity = none
若要禁用所有代码样式规则,请在配置文件中将类别 Style
的严重性设置为 none
。
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
有关详细信息,请参阅如何禁止显示代码分析警告。