使用本機函式,而不是 lambda (IDE0039)

屬性
規則識別碼 IDE0039
標題 使用本機函式而非 Lambda
類別 樣式
子類別 語言規則 (運算式層級喜好設定)
適用的語言 C# 7.0+
選項 csharp_style_pattern_local_over_anonymous_function

概觀

此樣式規則會考慮使用 本機函 式與 lambda 運算式 , (匿名函式) 。

選項

選項會指定您想要強制執行規則的行為。 如需設定選項的相關資訊,請參閱 選項格式

csharp_style_pattern_local_over_anonymous_function

屬性 描述
選項名稱 csharp_style_pattern_local_over_anonymous_function
選項值 true 偏好本機函式而非匿名函式
false 偏好匿名函式而非本機函式
預設選項值 true
// csharp_style_pattern_local_over_anonymous_function = true
int fibonacci(int n)
{
    return n <= 1 ? 1 : fibonacci(n-1) + fibonacci(n-2);
}

// csharp_style_pattern_local_over_anonymous_function = false
Func<int, int> fibonacci = null;
fibonacci = (int n) =>
{
    return n <= 1 ? 1 : fibonacci(n - 1) + fibonacci(n - 2);
};

隱藏警告

如果您想要只隱藏單一違規,請將預處理器指示詞新增至您的原始程式檔,以停用並重新啟用規則。

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

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

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

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

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

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

另請參閱