Kod stili kurallar

.NET kod stili analizi, kod tabanınızda tutarlı stili korumayı hedefleyen kurallar sağlar. Bu kuralların kural kimliğinde bir "IDE" ön eki vardır.

Kod stili kuralları aşağıdaki alt kategorilere ayrılır:

  • Dil ve gereksiz kod kuralları

    C# veya Visual Basic diliyle ilgili kurallar. Örneğin, değişkenleri tanımlarken kullanımını veya ifade gövdeli üyelerin var tercih edilip edilmediğini belirten kurallar belirtebilirsiniz. Bu kategoride, yöntemler veya kullanılmayan özel alanlar, özellikler veya yöntemler içinde erişilemeyen kod gibi gereksiz kodu bulan kurallar da bulunur.

  • Biçimlendirme kuralları

    Okunmasını kolaylaştırmak için kodunuzun düzeni ve yapısıyla ilgili kurallar. Örneğin, denetim bloklarındaki boşlukların tercih edilip edilmediğini tanımlayan bir biçimlendirme seçeneği belirtebilirsiniz.

  • Adlandırma kuralları

    Kod öğelerinin adlandırılmasıyla ilgili kurallar. Örneğin, yöntem adlarının async "Zaman uyumsuz" son ekine sahip olması gerektiğini belirtebilirsiniz.

  • Çeşitli kurallar

    Diğer kategorilere ait olmayan kurallar.

Dizin oluşturma

Aşağıdaki tabloda, varsa kimlik ve seçeneklere göre tüm kod stili kuralları listelenmiştir.

Kural Kimliği Başlık Seçenek
IDE0001 Adı basitleştirme
IDE0002 Üye erişimini basitleştirme
IDE0003 Kaldırma this veya Me niteleme dotnet_style_qualification_for_field
dotnet_style_qualification_for_property
dotnet_style_qualification_for_method
dotnet_style_qualification_for_event
IDE0004 Gereksiz atamayı kaldırma
IDE0005 Gereksiz içeri aktarmayı kaldırma
IDE0007 Açık tür yerine kullan var csharp_style_var_for_built_in_types
csharp_style_var_when_type_is_apparent
csharp_style_var_elsewhere
IDE0008 Yerine açık tür kullanın var csharp_style_var_for_built_in_types
csharp_style_var_when_type_is_apparent
csharp_style_var_elsewhere
IDE0009 Ekleme this veya Me niteleme dotnet_style_qualification_for_field
dotnet_style_qualification_for_property
dotnet_style_qualification_for_method
dotnet_style_qualification_for_event
IDE0010 Switch deyimine eksik servis talepleri ekleme
IDE0011 Küme ayraçları ekleme csharp_prefer_braces
IDE0016 Throw ifadesini kullanma csharp_style_throw_expression
IDE0017 Nesne başlatıcıları kullanma dotnet_style_object_initializer
IDE0018 Satır içi değişken bildirimi csharp_style_inlined_variable_declaration
IDE0019 Denetimden sonra null gelenlerden kaçınmak as için desen eşleştirmeyi kullanma csharp_style_pattern_matching_over_as_with_null_check
IDE0020 Denetimin ardından bir atama (değişkenli) olmasını önlemek is için desen eşleştirmeyi kullanın csharp_style_pattern_matching_over_is_with_cast_check
IDE0021 Oluşturucular için ifade gövdesini kullanma csharp_style_expression_bodied_constructors
IDE0022 Yöntemler için ifade gövdesini kullanma csharp_style_expression_bodied_methods
IDE0023 Dönüştürme işleçleri için ifade gövdesini kullanma csharp_style_expression_bodied_operators
IDE0024 İşleçler için ifade gövdesini kullanma csharp_style_expression_bodied_operators
IDE0025 Özellikler için ifade gövdesini kullanma csharp_style_expression_bodied_properties
IDE0026 Dizin oluşturucular için ifade gövdesini kullanma csharp_style_expression_bodied_indexers
IDE0027 Erişimciler için ifade gövdesini kullanma csharp_style_expression_bodied_accessors
IDE0028 Koleksiyon başlatıcılarını kullanma dotnet_style_collection_initializer
dotnet_style_prefer_collection_expression (yalnızca C#
IDE0029 Null denetim basitleştirilebilir dotnet_style_coalesce_expression
IDE0030 Null denetim basitleştirilebilir dotnet_style_coalesce_expression
IDE0031 Null yayma kullanma dotnet_style_null_propagation
IDE0032 Otomatik özelliği kullanma dotnet_style_prefer_auto_properties
IDE0033 Açıkça sağlanan tanımlama grubu adını kullan dotnet_style_explicit_tuple_names
IDE0034 İfadeyi basitleştirme default csharp_prefer_simple_default_expression
IDE0035 Erişilemeyen kodları kaldırma
IDE0036 Sipariş değiştiricileri csharp_preferred_modifier_order
visual_basic_preferred_modifier_order
IDE0037 Çıkarsanan üye adını kullanma dotnet_style_prefer_inferred_tuple_names
dotnet_style_prefer_inferred_anonymous_type_member_names
IDE0038 Denetimin ardından bir atama (değişken olmadan) olmasını önlemek is için desen eşleştirmeyi kullanın csharp_style_pattern_matching_over_is_with_cast_check
IDE0039 Lambda yerine yerel işlevi kullanma csharp_style_prefer_local_over_anonymous_function
IDE0040 Erişilebilirlik değiştiricileri ekleme dotnet_style_require_accessibility_modifiers
IDE0041 Kullanım null denetimi dotnet_style_prefer_is_null_check_over_reference_equality_method
IDE0042 Değişken bildirimini kaldırma csharp_style_deconstructed_variable_declaration
IDE0044 Salt okunur değiştirici ekleme dotnet_style_readonly_field
IDE0045 Atama için koşullu ifade kullanma dotnet_style_prefer_conditional_expression_over_assignment
IDE0046 Dönüş için koşullu ifade kullanma dotnet_style_prefer_conditional_expression_over_return
IDE0047 Gereksiz parantezleri kaldırma 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
IDE0048 Netlik için parantez ekleme 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
IDE0049 Tür başvuruları için çerçeve türü adları yerine dil anahtar sözcükleri kullanma dotnet_style_predefined_type_for_locals_parameters_members
dotnet_style_predefined_type_for_member_access
IDE0050 Anonim türü tanımlama grubuna dönüştürme
IDE0051 Kullanılmayan özel üyeyi kaldırma
IDE0052 Okunmamış özel üyeyi kaldırma
IDE0053 Lambdalar için ifade gövdesi kullanma csharp_style_expression_bodied_lambdas
IDE0054 Bileşik atamayı kullanma dotnet_style_prefer_compound_assignment
IDE0055 Biçimlendirmeyi düzeltme (Burada listelenemeyecek kadar çok. Bkz. .NET biçimlendirme seçenekleri ve C# biçimlendirme seçenekleri.)
IDE0056 Dizin işlecini kullanma csharp_style_prefer_index_operator
IDE0057 Aralık işlecini kullanma csharp_style_prefer_range_operator
IDE0058 Kullanılmayan ifade değerini kaldırma csharp_style_unused_value_expression_statement_preference
visual_basic_style_unused_value_expression_statement_preference
IDE0059 Gereksiz değer atamasını kaldırma csharp_style_unused_value_assignment_preference
visual_basic_style_unused_value_assignment_preference
IDE0060 Kullanılmayan parametreyi kaldırma dotnet_code_quality_unused_parameters
IDE0061 Yerel işlevler için ifade gövdesini kullanma csharp_style_expression_bodied_local_functions
IDE0062 Yerel işlevi statik yap csharp_prefer_static_local_function
IDE0063 Basit using deyimini kullanma csharp_prefer_simple_using_statement
IDE0064 Yapı alanlarını yazılabilir hale getirme
IDE0065 using yönerge yerleştirme csharp_using_directive_placement
IDE0066 Switch ifadesini kullanma csharp_style_prefer_switch_expression
IDE0070 System.HashCode.Combine komutunu kullanma
IDE0071 İlişkilendirmeyi basitleştirme dotnet_style_prefer_simplified_interpolation
IDE0072 İfadeyi değiştirmek için eksik servis talepleri ekleme
IDE0073 Dosya üst bilgisini kullanma file_header_template
IDE0074 Birleşim bileşik ataması kullanma dotnet_style_prefer_compound_assignment
IDE0075 Koşullu ifadeyi basitleştirme dotnet_style_prefer_simplified_boolean_expressions
IDE0076 Geçersiz geneli kaldır SuppressMessageAttribute
IDE0077 Genel olarak eski biçim hedeflerinden kaçının SuppressMessageAttribute
IDE0078 Desen eşleştirme kullanma csharp_style_prefer_pattern_matching
IDE0079 Gereksiz gizlemeyi kaldırma dotnet_remove_unnecessary_suppression_exclusions
IDE0080 Gereksiz gizleme işlecini kaldırma
IDE0081 ByVal bağımsız değişkenini kaldır
IDE0082 Dönüştür typeofnameof
IDE0083 Desen eşleştirmeyi kullan (not işleç) csharp_style_prefer_not_pattern
IDE0084 Desen eşleştirmeyi kullan (IsNot işleç) visual_basic_style_prefer_isnot_expression
IDE0090 İfadeyi basitleştirme new csharp_style_implicit_object_creation_when_type_is_apparent
IDE0100 Gereksiz eşitlik işlecini kaldırma
IDE0110 Gereksiz atılabilir değişkeni kaldır
IDE0120 LINQ ifadesini basitleştirme
IDE0130 Ad alanı klasör yapısıyla eşleşmiyor dotnet_style_namespace_match_folder
IDE0140 Nesne oluşturmayı basitleştirme visual_basic_style_prefer_simplified_object_creation
IDE0150 Tür denetimi yerine denetimi tercih edin null csharp_style_prefer_null_check_over_type_check
IDE0160 Blok kapsamlı ad alanı kullanma csharp_style_namespace_declarations
IDE0161 Dosya kapsamlı ad alanı kullanma csharp_style_namespace_declarations
IDE0170 Özellik düzenini basitleştirme csharp_style_prefer_extended_property_pattern
IDE0180 Değerleri değiştirmek için tanımlama grubu kullanma csharp_style_prefer_tuple_swap
IDE0200 Gereksiz lambda ifadesini kaldırma csharp_style_prefer_method_group_conversion
IDE0210 Üst düzey deyimlere dönüştürme csharp_style_prefer_top_level_statements
IDE0211 'Program.Main' stil programına dönüştür csharp_style_prefer_top_level_statements
IDE0220 foreach döngüsünde açık atama ekleme dotnet_style_prefer_foreach_explicit_cast_in_source
IDE0230 UTF-8 dize değişmez değeri kullanma csharp_style_prefer_utf8_string_literals
IDE0240 Null atanabilir yönerge yedekli
IDE0241 Null atanabilir yönerge gereksiz
IDE0250 Yapı 'salt okunur' yapılabilir csharp_style_prefer_readonly_struct
IDE0251 Üye 'salt okunur' yapılabilir csharp_style_prefer_readonly_struct_member
IDE0260 Desen eşleştirme kullanma csharp_style_pattern_matching_over_as_with_null_check
IDE0270 Null denetim basitleştirilebilir dotnet_style_coalesce_expression
IDE0280 nameof komutunu kullanma
IDE0290 Birincil oluşturucuyu kullanma csharp_style_prefer_primary_constructors
IDE0300 Dizi için koleksiyon ifadesini kullanma dotnet_style_prefer_collection_expression
IDE0301 Boş için koleksiyon ifadesini kullanma dotnet_style_prefer_collection_expression
IDE0302 Stackalloc için koleksiyon ifadesini kullanma dotnet_style_prefer_collection_expression
IDE0303 Için koleksiyon ifadesini kullanma Create() dotnet_style_prefer_collection_expression
IDE0304 Oluşturucu için koleksiyon ifadesi kullanma dotnet_style_prefer_collection_expression
IDE0305 Akıcı bir şekilde koleksiyon ifadesi kullanma dotnet_style_prefer_collection_expression
IDE1005 Koşullu temsilci çağrısı kullanma csharp_style_conditional_delegate_call
IDE1006 Adlandırma stilleri

Not

Yalnızca Visual Studio IDE'de görünen bazı kurallar vardır ve bunlar JSON ve normal ifade desen dizeleriyle ilgilidir. Daha fazla bilgi için bkz . JSON001, JSON002 ve RE0001.

Gösterge

Aşağıdaki tabloda, başvuru belgelerindeki her kural için sağlanan bilgi türü gösterilmektedir.

Öğe Açıklama
Kural Kimliği Kuralın benzersiz tanımlayıcısı. Kural önem derecesini yapılandırmak ve kod dosyasındaki uyarıları engellemek için kullanılır.
Başlık Kuralın başlığı.
Kategori Kuralın kategorisi.
Alt kategori Dil kuralları, Biçimlendirme kuralları veya Adlandırma kuralları gibi kuralın alt kategorisi.
Geçerli diller Uygulanabilir .NET dilleri (C# veya Visual Basic) ve varsa en düşük dil sürümü.
Tanıtılan sürüm Kural ilk kez tanıtıldığında .NET SDK veya Visual Studio sürümü.
Seçenekler Kural için kullanılabilir seçenekler.

Ayrıca bkz.