Share via


移除不必要的運算式值 (IDE0058)

屬性
規則識別碼 IDE0058
標題 移除不必要的運算式值
類別 樣式
子類別 語言規則 (運算式層級喜好設定)
適用語言 C# 和 Visual Basic
選項 csharp_style_unused_value_expression_statement_preference
visual_basic_style_unused_value_expression_statement_preference

概觀

此規則會標幟未使用的運算式值。 例如:

void M()
{
  Compute(); // IDE0058: computed value is never used.
}

int Compute();

您可以採取下列其中一個動作來修正此違規:

  • 如果運算式沒有副作用,請移除整個陳述式。 這樣做可以避免不必要的計算,從而改善效能。

  • 如果運算式有副作用,請將指派的左側取代為 Discard (僅限 C#) 或從未使用的區域變數。 這樣做可以明確顯示捨棄未使用值的意圖,使程式碼更為清楚。

    _ = Compute();
    

選項

此規則的選項會指定偏好使用 Discard 或未使用的區域變數:

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

csharp_style_unused_value_expression_statement_preference

屬性 描述
選項名稱 csharp_style_unused_value_expression_statement_preference
適用語言 C#
選項值 discard_variable 偏好將未使用的運算式指派給 Discard
unused_local_variable 偏好將未使用的運算式指派給從未使用的區域變數
預設選項值 discard_variable
// Original code:
System.Convert.ToInt32("35");

// After code fix for IDE0058:

// csharp_style_unused_value_expression_statement_preference = discard_variable
_ = System.Convert.ToInt32("35");

// csharp_style_unused_value_expression_statement_preference = unused_local_variable
var unused = Convert.ToInt32("35");

visual_basic_style_unused_value_expression_statement_preference

屬性 描述
選項名稱 visual_basic_style_unused_value_expression_statement_preference
適用語言 Visual Basic
選項值 unused_local_variable 偏好將未使用的運算式指派給從未使用的區域變數
預設選項值 unused_local_variable
' visual_basic_style_unused_value_expression_statement_preference = unused_local_variable
Dim unused = Computation()

隱藏警告

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

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

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

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

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

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

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

另請參閱