Megosztás a következőn keresztül:


Kódstílus-szabályok

A .NET kódstílus-elemzés olyan szabályokat biztosít, amelyek a következetes stílus fenntartását célul tűzik ki a kódbázisban. Ezek a szabályok egy "IDE" előtaggal rendelkeznek a szabályazonosítóban.

A kódstílus-szabályok a következő alkategóriákba vannak rendezve:

  • Nyelvi és szükségtelen kódszabályok

    A C# vagy a Visual Basic nyelvre vonatkozó szabályok. Megadhat például olyan szabályokat, amelyek figyelembe veszi a változók meghatározásakor használt var szabályokat, vagy azt, hogy előnyben részesítik-e a kifejezésre testesített tagokat. Ez a kategória olyan szabályokat is tartalmaz, amelyek szükségtelen kódot találnak, például nem elérhető kódot a metódusok vagy a nem használt magánmezők, tulajdonságok vagy metódusok között.

  • Formázási szabályok

    A kód elrendezésére és szerkezetére vonatkozó szabályok a könnyebb olvashatóság érdekében. Megadhat például egy formázási beállítást, amely meghatározza, hogy a vezérlőblokkokban lévő szóközök előnyben részesítettek-e vagy sem.

  • Elnevezési szabályok

    A kódelemek elnevezésére vonatkozó szabályok. Megadhatja például, hogy a async metódusneveknek "Async" utótagot kell tartalmazniuk.

  • Egyéb szabályok

    Más kategóriákba nem tartozó szabályok.

Index

Az alábbi táblázat felsorolja az összes kódstílus-szabályt azonosító és beállítások szerint, ha vannak ilyenek.

Szabályazonosító Cím Lehetőség
IDE0001 Név egyszerűsítése
IDE0002 Taghozzáférés egyszerűsítése
IDE0003 Eltávolítás this vagy Me minősítés dotnet_style_qualification_for_field
dotnet_style_qualification_for_property
dotnet_style_qualification_for_method
dotnet_style_qualification_for_event
IDE0004 Szükségtelen leadás eltávolítása
IDE0005 Szükségtelen importálás eltávolítása
IDE0007 Használat var explicit típus helyett csharp_style_var_for_built_in_types
csharp_style_var_when_type_is_apparent
csharp_style_var_elsewhere
IDE0008 Explicit típus használata ahelyett, hogy var csharp_style_var_for_built_in_types
csharp_style_var_when_type_is_apparent
csharp_style_var_elsewhere
IDE0009 Hozzáadás this vagy Me minősítés dotnet_style_qualification_for_field
dotnet_style_qualification_for_property
dotnet_style_qualification_for_method
dotnet_style_qualification_for_event
IDE0010 Hiányzó esetek hozzáadása az utasításváltáshoz
IDE0011 Kapcsos zárójelek hozzáadása csharp_prefer_braces
IDE0016 Dobókifejezés használata csharp_style_throw_expression
IDE0017 Objektum inicializálók használata dotnet_style_object_initializer
IDE0018 Beágyazott változó deklarációja csharp_style_inlined_variable_declaration
IDE0019 Mintamegfeleltetés használata az ellenőrzés elkerüléséhez as null csharp_style_pattern_matching_over_as_with_null_check
IDE0020 Mintaegyeztetés használata az ellenőrzés és a leadás (változóval) követésének elkerülése érdekében is csharp_style_pattern_matching_over_is_with_cast_check
IDE0021 Kifejezéstörzs használata konstruktorokhoz csharp_style_expression_bodied_constructors
IDE0022 Kifejezéstörzs használata metódusokhoz csharp_style_expression_bodied_methods
IDE0023 Kifejezéstörzs használata konverziós operátorokhoz csharp_style_expression_bodied_operators
IDE0024 Kifejezéstörzs használata operátorokhoz csharp_style_expression_bodied_operators
IDE0025 Kifejezéstörzs használata tulajdonságokhoz csharp_style_expression_bodied_properties
IDE0026 Kifejezéstörzs használata indexelőkhöz csharp_style_expression_bodied_indexers
IDE0027 Kifejezéstörzs használata tartozékokhoz csharp_style_expression_bodied_accessors
IDE0028 Gyűjtemény inicializálóinak használata dotnet_style_collection_initializer
dotnet_style_prefer_collection_expression (csak C# esetén)
IDE0029 A null értékű ellenőrzés egyszerűsíthető dotnet_style_coalesce_expression
IDE0030 A null értékű ellenőrzés egyszerűsíthető dotnet_style_coalesce_expression
IDE0031 Null propagálás használata dotnet_style_null_propagation
IDE0032 Automatikus tulajdonság használata dotnet_style_prefer_auto_properties
IDE0033 Explicit módon megadott név használata dotnet_style_explicit_tuple_names
IDE0034 Kifejezés egyszerűsítése default csharp_prefer_simple_default_expression
IDE0035 Nem elérhető kód eltávolítása
IDE0036 Rendelésmódosítók csharp_preferred_modifier_order
visual_basic_preferred_modifier_order
IDE0037 A tag neve a következőre következtetve: dotnet_style_prefer_inferred_tuple_names
dotnet_style_prefer_inferred_anonymous_type_member_names
IDE0038 Mintamegfeleltetés használata az ellenőrzés és a leadás (változó nélkül) elkerülése érdekében is csharp_style_pattern_matching_over_is_with_cast_check
IDE0039 Helyi függvény használata lambda helyett csharp_style_prefer_local_over_anonymous_function
IDE0040 Akadálymentességi módosítók hozzáadása dotnet_style_require_accessibility_modifiers
IDE0041 A használat null értékű ellenőrzés dotnet_style_prefer_is_null_check_over_reference_equality_method
IDE0042 Változó dekonstruálásának deklarációja csharp_style_deconstructed_variable_declaration
IDE0044 Írásvédett módosító hozzáadása dotnet_style_readonly_field
IDE0045 Feltételes kifejezés használata hozzárendeléshez dotnet_style_prefer_conditional_expression_over_assignment
IDE0046 Feltételes kifejezés használata visszatéréshez dotnet_style_prefer_conditional_expression_over_return
IDE0047 Szükségtelen zárójelek eltávolítása 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 Zárójelek hozzáadása az egyértelműség érdekében 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ípushivatkozásokhoz használjon nyelvi kulcsszavakat a keretrendszertípusnevek helyett dotnet_style_predefined_type_for_locals_parameters_members
dotnet_style_predefined_type_for_member_access
IDE0050 Névtelen típus konvertálása rekordtípussá
IDE0051 Nem használt privát tag eltávolítása
IDE0052 Olvasatlan privát tag eltávolítása
IDE0053 A lambdas kifejezéstörzsének használata csharp_style_expression_bodied_lambdas
IDE0054 Összetett hozzárendelés használata dotnet_style_prefer_compound_assignment
IDE0055 Formázás javítása (Túl sok a listához. Lásd: .NET formázási beállítások és C# formázási beállítások.)
IDE0056 Index operátor használata csharp_style_prefer_index_operator
IDE0057 Tartomány operátor használata csharp_style_prefer_range_operator
IDE0058 A nem használt kifejezésérték eltávolítása csharp_style_unused_value_expression_statement_preference
visual_basic_style_unused_value_expression_statement_preference
IDE0059 Felesleges érték hozzárendelésének eltávolítása csharp_style_unused_value_assignment_preference
visual_basic_style_unused_value_assignment_preference
IDE0060 Nem használt paraméter eltávolítása dotnet_code_quality_unused_parameters
IDE0061 Kifejezéstörzs használata helyi függvényekhez csharp_style_expression_bodied_local_functions
IDE0062 Helyi függvény létrehozása static csharp_prefer_static_local_function
IDE0063 Egyszerű using utasítás használata csharp_prefer_simple_using_statement
IDE0064 Strukturált mezők írhatóvá tétele
IDE0065 using irányelv elhelyezése csharp_using_directive_placement
IDE0066 Kapcsolókifejezés használata csharp_style_prefer_switch_expression
IDE0070 Használja a következő parancsot: System.HashCode.Combine
IDE0071 Az interpoláció egyszerűsítése dotnet_style_prefer_simplified_interpolation
IDE0072 Hiányzó esetek hozzáadása a kifejezésváltáshoz
IDE0073 Fájlfejléc használata file_header_template
IDE0074 A coalesce összetett hozzárendelésének használata dotnet_style_prefer_compound_assignment
IDE0075 Feltételes kifejezés egyszerűsítése dotnet_style_prefer_simplified_boolean_expressions
IDE0076 Érvénytelen globális eltávolítása SuppressMessageAttribute
IDE0077 Az örökölt formátumcél elkerülése globálisan SuppressMessageAttribute
IDE0078 Mintaegyezés használata csharp_style_prefer_pattern_matching
IDE0079 Szükségtelen elnyomás eltávolítása dotnet_remove_unnecessary_suppression_exclusions
IDE0080 Szükségtelen elnyomási operátor eltávolítása
IDE0081 Az ByVal eltávolítása
IDE0082 Konvertálás typeofnameof
IDE0083 Mintaegyezés használata (not operátor) csharp_style_prefer_not_pattern
IDE0084 Mintaegyezés használata (IsNot operátor) visual_basic_style_prefer_isnot_expression
IDE0090 Kifejezés egyszerűsítése new csharp_style_implicit_object_creation_when_type_is_apparent
IDE0100 Szükségtelen egyenlőségi operátor eltávolítása
IDE0110 Szükségtelen elvetés eltávolítása
IDE0120 A LINQ-kifejezés egyszerűsítése
IDE0130 A névtér nem egyezik a mappaszerkezettel dotnet_style_namespace_match_folder
IDE0140 Objektumlétrehozás egyszerűsítése visual_basic_style_prefer_simplified_object_creation
IDE0150 A típusellenőrzés előnyben részesítés null csharp_style_prefer_null_check_over_type_check
IDE0160 Blokk hatókörű névtér használata csharp_style_namespace_declarations
IDE0161 Fájlhatókörű névtér használata csharp_style_namespace_declarations
IDE0170 Tulajdonságminta egyszerűsítése csharp_style_prefer_extended_property_pattern
IDE0180 Értékek felcserélése a rekord használatával csharp_style_prefer_tuple_swap
IDE0200 Szükségtelen lambdakifejezés eltávolítása csharp_style_prefer_method_group_conversion
IDE0210 Konvertálás legfelső szintű utasításokká csharp_style_prefer_top_level_statements
IDE0211 Konvertálás "Program.Main" stílusú programra csharp_style_prefer_top_level_statements
IDE0220 Explicit cast hozzáadása a foreach ciklusban dotnet_style_prefer_foreach_explicit_cast_in_source
IDE0230 UTF-8 sztringkonstans használata csharp_style_prefer_utf8_string_literals
IDE0240 A null értékű irányelv redundáns
IDE0241 A null értékű irányelv szükségtelen
IDE0250 A szerkezet "olvashatóan" készíthető csharp_style_prefer_readonly_struct
IDE0251 A tag "írásvédett" lehet csharp_style_prefer_readonly_struct_member
IDE0260 Mintaegyezés használata csharp_style_pattern_matching_over_as_with_null_check
IDE0270 A null értékű ellenőrzés egyszerűsíthető dotnet_style_coalesce_expression
IDE0280 Használja a következő parancsot: nameof
IDE0290 Elsődleges konstruktor használata csharp_style_prefer_primary_constructors
IDE0300 Gyűjteménykifejezés használata tömbhöz dotnet_style_prefer_collection_expression
IDE0301 Gyűjteménykifejezés használata üresen dotnet_style_prefer_collection_expression
IDE0302 Gyűjteménykifejezés használata a stackallochoz dotnet_style_prefer_collection_expression
IDE0303 Gyűjteménykifejezés használata a következőhöz: Create() dotnet_style_prefer_collection_expression
IDE0304 Gyűjteménykifejezés használata a szerkesztőhöz dotnet_style_prefer_collection_expression
IDE0305 Gyűjteménykifejezés használata fluenthez dotnet_style_prefer_collection_expression
IDE0320 Névtelen függvény létrehozása static csharp_prefer_static_anonymous_function
IDE0330 A System.Threading.Lock előnyben részesítése csharp_prefer_system_threading_lock
IDE1005 Feltételes meghatalmazotti hívás használata csharp_style_conditional_delegate_call
IDE1006 Elnevezési stílusok

Feljegyzés

Vannak olyan szabályok, amelyek csak a Visual Studio IDE-ben jelennek meg, és ezek jSON-t és reguláris kifejezésminta-sztringeket tartalmaznak. További információ: JSON001, JSON002 és RE0001.

Jelmagyarázat

Az alábbi táblázat a referenciadokumentációban szereplő egyes szabályokhoz megadott információk típusát mutatja be.

Elem Leírás
Szabályazonosító A szabály egyedi azonosítója. A szabály súlyosságának konfigurálására és a kódfájlban lévő figyelmeztetések letiltására szolgál.
Cím A szabály címe.
Kategória A szabály kategóriája.
Alkategória A szabály alkategóriája, például nyelvi szabályok, formázási szabályok vagy elnevezési szabályok.
Alkalmazandó nyelvek Alkalmazható .NET-nyelvek (C# vagy Visual Basic), valamint a minimális nyelvi verzió, ha van.
Bevezetett verzió A .NET SDK vagy a Visual Studio verziója a szabály első bevezetésekor.
Beállítások A szabály minden elérhető lehetősége.

Lásd még