Compartilhar via


Usar a função local em vez de lambda (IDE0039)

Propriedade Valor
ID da regra IDE0039
Título Usar função local em vez de lambda
Categoria Estilo
Subcategoria Regras de linguagem (preferências no nível de expressão)
Linguagens aplicáveis C#
Opções csharp_style_prefer_local_over_anonymous_function

Visão geral

Essa regra de estilo diz respeito ao uso de funções locais versus expressões lambda (funções anônimas).

Opções

As opções especificam o comportamento que você quer que a regra imponha. Para obter informações sobre como configurar as opções, consulte Formato da opção.

csharp_style_prefer_local_over_anonymous_function

Propriedade Valor Descrição
Nome da opção csharp_style_prefer_local_over_anonymous_function
Valores da opção true Preferir as funções locais em vez de funções anônimas
false Preferir as funções anônimas em vez de funções locais
Valor da opção padrão true
// csharp_style_prefer_local_over_anonymous_function = true
int fibonacci(int n)
{
    return n <= 1 ? 1 : fibonacci(n-1) + fibonacci(n-2);
}

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

Suprimir um aviso

Se você quiser suprimir apenas uma violação, adicione diretivas de pré-processador ao arquivo de origem para desabilitar e, em seguida, reabilite a regra.

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

Para desabilitar a regra em um arquivo, uma pasta ou um projeto, defina a severidade como none no arquivo de configuração.

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

Para desabilitar todas as regras de estilo de código, defina a severidade da categoria Style como none no arquivo de configuração.

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

Para obter mais informações, confira Como suprimir avisos de análise de código.

Confira também