İngilizce dilinde oku

Aracılığıyla paylaş


Parantez tercihleri (IDE0047 ve IDE0048)

Bu makalede, IDE0047 ve IDE0048ilgili iki kural açıklanmaktadır.

Mülk Değer
Kural Kimliği IDE0047
Başlık Gereksiz parantezleri kaldırma
Kategori Üslup
alt kategori Dil kuralları (parantez tercihleri)
Geçerli diller C# ve Visual Basic
Tanıtılan sürüm Visual Studio 2017
Seçenekleri dotnet_style_parentheses_in_arithmetic_binary_operators
dotnet_style_parentheses_in_relational_binary_operators
dotnet_style_parentheses_in_other_binary_operators
dotnet_style_parentheses_in_other_operators
Mülk Değer
Kural Kimliği IDE0048
Başlık Netlik için parantez ekleme
Kategori Üslup
Alt kategori Dil kuralları (parantez tercihleri)
Geçerli diller C# ve Visual Basic
Tanıtılan sürüm Visual Studio 2017
Seçenekleri dotnet_style_parentheses_in_arithmetic_binary_operators
dotnet_style_parentheses_in_relational_binary_operators
dotnet_style_parentheses_in_other_binary_operators
dotnet_style_parentheses_in_other_operators

Genel bakış

Bu bölümdeki stil kuralları, aritmetik, ilişkisel ve diğer ikiliişleçlerinin önceliğini netleştirmek için parantez kullanımı da dahil olmak üzere parantez tercihlerini ilgilendirir.

Seçenekler

Bu kural, işleç türüne göre tercihleri belirtmek için ilişkili seçeneklere sahiptir:

Seçenekleri yapılandırma hakkında bilgi için bkz. Seçenek biçimi.

aritmetik ikili operatörlerde parantez kullanımı stili (dotnet)

Mülk Değer Açıklama
Seçenek adı dotnet_stili_aritmetik_ikili_operatör_parantezleri
Seçenek değerleri always_for_clarity Aritmetik işleç önceliğini netleştirmek için parantezleri tercih edin
never_if_unnecessary Aritmetik işleç önceliği belirgin olduğunda parantezleri tercih etmez
varsayılan seçenek değeri always_for_clarity

Aritmetik ikili işleçler şunlardır: *, /, %, +, -, <<, >>, &, ^ve |.

C#
// dotnet_style_parentheses_in_arithmetic_binary_operators = always_for_clarity
var v = a + (b * c);

// dotnet_style_parentheses_in_arithmetic_binary_operators = never_if_unnecessary
var v = a + b * c;

dotnet_style_ilişkisel_ikili_operatörlerde_parantezler

Mülk Değer Açıklama
Seçenek adı dotnet_style_parantez_i̇lişkisel_i̇kili_operatörlerde
Seçenek değerleri always_for_clarity İlişkisel işleç önceliğini netleştirmek için parantezleri tercih edin
never_if_unnecessary İlişkisel işleç önceliği belirgin olduğunda parantez olmamasını tercih etme
varsayılan seçenek değeri always_for_clarity

İlişkisel ikili işleçler şunlardır: >, <, <=, >=, is, as, ==ve !=.

C#
// dotnet_style_parentheses_in_relational_binary_operators = always_for_clarity
var v = (a < b) == (c > d);

// dotnet_style_parentheses_in_relational_binary_operators = never_if_unnecessary
var v = a < b == c > d;

dotnet_style_parentheses_in_other_binary_operators

Mülk Değer Açıklama
Seçenek adı dotnet_style_parentheses_in_other_binary_operators
Seçenek değerleri always_for_clarity Diğer ikili işleç önceliğini netleştirmek için parantezleri tercih edin
never_if_unnecessary Diğer ikili işleç önceliği belirgin olduğunda parantez olmamasını tercih etme
varsayılan seçenek değeri always_for_clarity

Diğer ikili işleçler şunlardır: &&, ||ve ??.

C#
// dotnet_style_parentheses_in_other_binary_operators = always_for_clarity
var v = a || (b && c);

// dotnet_style_parentheses_in_other_binary_operators = never_if_unnecessary
var v = a || b && c;

dotnet_style_parentheses_in_other_operators

Mülk Değer Açıklama
Seçenek adı dotnet_stili_parantezler_diğer_operatörlerde (örneğin, kodda kullanılan belirteç)
Seçenek değerleri always_for_clarity Diğer işleç önceliğini netleştirmek için parantezleri tercih edin
never_if_unnecessary Diğer işleç önceliği belirgin olduğunda parantez olmamasını tercih edin
varsayılan seçenek değeri never_if_unnecessary

Bu seçenek, aşağıdakiler dışında kalan işleçler için geçerlidir:

*, /, %, +, -, <<, >>, &, ^, |>, <, <=, >=, is, as, ==, !=&&, ||, ??

C#
// dotnet_style_parentheses_in_other_operators = always_for_clarity
var v = (a.b).Length;

// dotnet_style_parentheses_in_other_operators = never_if_unnecessary
var v = a.b.Length;

Uyarıyı gizleme

Yalnızca tek bir ihlali engellemek istiyorsanız, kuralı devre dışı bırakmak ve sonra yeniden etkinleştirmek için kaynak dosyanıza ön işlemci yönergeleri ekleyin.

C#
#pragma warning disable IDE0047 // Or IDE0048
// The code that's violating the rule is on this line.
#pragma warning restore IDE0047 // Or IDE0048

Bir dosya, klasör veya projenin kuralını devre dışı bırakmak için önem derecesini yapılandırma dosyasında none olarak ayarlayın.

ini
[*.{cs,vb}]
dotnet_diagnostic.IDE0047.severity = none
dotnet_diagnostic.IDE0048.severity = none

Tüm kod stili kurallarını devre dışı bırakmak için kategori Style önem derecesini yapılandırma dosyasında none olarak ayarlayın.

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

Daha fazla bilgi için bkz. Kod analizi uyarılarını gizleme.

Ayrıca bkz.