使用 null 傳播 (IDE0031)

屬性
規則識別碼 IDE0031
標題 使用 null 傳播
類別 樣式
子類別 語言規則 (運算式層級喜好設定)
適用語言 C# 和 Visual Basic
選項 dotnet_style_null_propagation

概觀

此樣式規則會考慮使用 null 條件運算子與具有 null 檢查的三元條件運算式

選項

設定相關選項的值,以指定 null 條件運算子或具有 null 檢查的三元條件運算式。

如需設定選項的詳細資訊,請參閱選項格式

dotnet_style_null_propagation

屬性 描述
選項名稱 dotnet_style_null_propagation
選項值 true 偏好盡可能使用 null 條件運算子
false 偏好盡可能使用三元 null 檢查
預設選項值 true
// dotnet_style_null_propagation = true
var v = o?.ToString();

// dotnet_style_null_propagation = false
var v = o == null ? null : o.ToString(); // or
var v = o != null ? o.ToString() : null;
' dotnet_style_null_propagation = true
Dim v = o?.ToString()

' dotnet_style_null_propagation = false
Dim v = If(o Is Nothing, Nothing, o.ToString()) ' or
Dim v = If(o IsNot Nothing, o.ToString(), Nothing)

隱藏警告

若您只想隱藏單一違規,請將前置處理指示詞新增至來源檔案以停用規則,然後重新啟用規則。

#pragma warning disable IDE0031
// The code that's violating the rule is on this line.
#pragma warning restore IDE0031

若要停用檔案、資料夾或專案的規則,請在組態檔中將其嚴重性設定為 none

[*.{cs,vb}]
dotnet_diagnostic.IDE0031.severity = none

若要停用所有程式碼樣式規則,請在組態檔中將類別 Style 的嚴重性設定為 none

[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none

如需詳細資訊,請參閱如何隱藏程式碼分析警告

另請參閱