新增遺漏案例以切換表示式 (IDE0072)
財產 | 價值 |
---|---|
規則標識碼 | IDE0072 |
標題 | 新增遺漏案例以切換表達式 |
類別 | 風格 |
子類別 | 語言規則 (表達層級偏好設定) |
適用的語言 | C# 8.0+ |
概述
此規則涉及為 開關表達式指定所有遺漏的案例,。 在下列情況中,switch 表達式被視為不完整且遺漏分支:
- 當 列舉 switch 表達式缺少一或多個列舉成員的情況時。
- 當缺少貫穿案例
_
時。
選項
此規則沒有相關聯的程式代碼樣式選項。
例
enum E
{
A,
B
}
class C
{
// Code with violations
int M(E e)
{
// IDE0072: Add missing cases
return e switch
{
E.A => 0,
_ => -1,
};
}
// Fixed code
int M(E e)
{
return e switch
{
E.A => 0,
E.B => 1,
_ => -1,
};
}
}
隱藏警告
如果您想要只隱藏單一違規,請將預處理器指示詞新增至原始程式檔以停用,然後重新啟用規則。
#pragma warning disable IDE0072
// The code that's violating the rule is on this line.
#pragma warning restore IDE0072
若要停用檔案、資料夾或項目的規則,請將其嚴重性設定為 組態檔中的 none
。
[*.{cs,vb}]
dotnet_diagnostic.IDE0072.severity = none
若要停用所有程式碼樣式規則,請將類別 Style
的嚴重性設定為 組態檔中的 none
。
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
如需詳細資訊,請參閱 如何在隱藏程式代碼分析警告。