Share via


Utilizar a propagação nula (IDE0031)

Propriedade Valor
ID da Regra IDE0031
Título Utilizar a propagação nula
Categoria Estilo
Subcategoria Regras de linguagem (preferências ao nível da expressão)
Idiomas aplicáveis C# e Visual Basic
Opções dotnet_style_null_propagation

Descrição Geral

Esta regra de estilo diz respeito à utilização do operador condicional nulo em comparação com uma expressão condicional ternary com verificação nula.

Opções

Defina o valor da opção associada para especificar se os operadores condicionais nulos ou as expressões condicionais ternary com verificações nulas.

Para obter mais informações sobre como configurar opções, veja Formato de opção.

dotnet_style_null_propagation

Propriedade Valor Descrição
Nome da opção dotnet_style_null_propagation
Valores de opção true Preferir utilizar o operador condicional nulo sempre que possível
false Preferir utilizar a verificação ternary null sempre que possível
Valor de opção predefinido true
// dotnet_style_null_propagation = true
var v = o?.ToString();

// dotnet_style_null_propagation = false
var v = o == null ? null : o.ToString(); // or
var v = o != null ? o.ToString() : null;
' dotnet_style_null_propagation = true
Dim v = o?.ToString()

' dotnet_style_null_propagation = false
Dim v = If(o Is Nothing, Nothing, o.ToString()) ' or
Dim v = If(o IsNot Nothing, o.ToString(), Nothing)

Suprimir um aviso

Se quiser suprimir apenas uma única violação, adicione diretivas de pré-processamento ao ficheiro de origem para desativar e, em seguida, reativar a regra.

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

Para desativar a regra para um ficheiro, pasta ou projeto, defina a sua gravidade como none no ficheiro de configuração.

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

Para desativar todas as regras de estilo de código, defina a gravidade da categoria Style como none no ficheiro de configuração.

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

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

Ver também