'var' 喜好設定 (IDE0007 和 IDE0008)
本文說明兩個相關規則 IDE0007
和 IDE0008
。
屬性 | 值 |
---|---|
規則識別碼 | IDE0007 |
標題 | 使用 var ,而非明確類型 |
類別 | 樣式 |
子類別 | 語言規則 ('var' 喜好設定) |
適用語言 | C# |
選項 | csharp_style_var_for_built_in_types |
csharp_style_var_when_type_is_apparent |
|
csharp_style_var_elsewhere |
屬性 | 值 |
---|---|
規則識別碼 | IDE0008 |
標題 | 使用明確類型,而非 var |
類別 | 樣式 |
子類別 | 語言規則 ('var' 喜好設定) |
適用語言 | C# |
選項 | csharp_style_var_for_built_in_types |
csharp_style_var_when_type_is_apparent |
|
csharp_style_var_elsewhere |
概觀
這兩個樣式規則會定義變數宣告中,是否應該使用 var 關鍵字或明確型別。 若要強制使用 var
,請將 IDE0007
的嚴重性設定為警告或錯誤。 若要強制使用明確型別,請將 IDE0008
的嚴重性設定為警告或錯誤。
選項
此規則的相關選項會定義應套用此樣式喜好設定的位置:
- 內建型別 (csharp_style_var_for_built_in_types)
- 型別明顯的位置 (csharp_style_var_when_type_is_apparent)
- 其他位置 (csharp_style_var_elsewhere)
如需有關設定選項的詳細資訊,請參閱選項格式。
csharp_style_var_for_built_in_types
屬性 | 值 | 描述 |
---|---|---|
選項名稱 | csharp_style_var_for_built_in_types | |
選項值 | true |
偏好使用 var 宣告變數搭配內建系統型別,例如 int |
false |
偏好使用明確型別勝過 var ,以宣告變數搭配內建系統型別,例如 int |
|
預設選項值 | false |
// csharp_style_var_for_built_in_types = true
var x = 5;
// csharp_style_var_for_built_in_types = false
int x = 5;
csharp_style_var_when_type_is_apparent
屬性 | 值 | 描述 |
---|---|---|
選項名稱 | csharp_style_var_when_type_is_apparent | |
選項值 | true |
在宣告運算式右側已提到型別時偏好使用 var |
false |
在宣告運算式右側已提到型別時偏好使用明確型別 | |
預設選項值 | false |
// csharp_style_var_when_type_is_apparent = true
var obj = new Customer();
// csharp_style_var_when_type_is_apparent = false
Customer obj = new Customer();
csharp_style_var_elsewhere
屬性 | 值 | 描述 |
---|---|---|
選項名稱 | csharp_style_var_elsewhere | |
選項值 | true |
除非由另一個程式碼樣式規則覆寫,否則所有情況都偏好使用 var ,而非明確型別 |
false |
除非由另一個程式碼樣式規則覆寫,否則所有情況都偏好使用明確型別,而非 var |
|
預設選項值 | false |
// csharp_style_var_elsewhere = true
var f = this.Init();
// csharp_style_var_elsewhere = false
bool f = this.Init();
隱藏警告
若您只想隱藏單一違規,請將前置處理指示詞新增至來源檔案以停用規則,然後重新啟用規則。
#pragma warning disable IDE0007 // Or IDE0008
// The code that's violating the rule is on this line.
#pragma warning restore IDE0007 // Or IDE0008
若要停用檔案、資料夾或專案的規則,請在組態檔中將其嚴重性設定為 none
。
[*.{cs,vb}]
dotnet_diagnostic.IDE0007.severity = none
dotnet_diagnostic.IDE0008.severity = none
若要停用所有程式碼樣式規則,請在組態檔中將類別 Style
的嚴重性設定為 none
。
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
如需詳細資訊,請參閱如何隱藏程式碼分析警告。