Partager via


Utiliser l’expression de collection pour stackalloc (IDE0302)

Propriété Valeur
Identificateur de la règle IDE0302
Titre Utiliser l’expression de collection pour stackalloc
Catégorie Style
sous-catégorie Règles de langage (préférences au niveau de l’expression)
langues applicables C# 12+
Options dotnet_style_prefer_collection_expression

Aperçu

Cette règle est similaire à Use collection expression for array (IDE0300), sauf qu’elle recherche stackalloc au lieu des tableaux. comme IDE0300, il propose de convertir le code pour utiliser une expression de collection . Par exemple, stackalloc int[] { ... } et stackalloc [] { ... } sont simplifiés pour [...].

Remarque

Cette règle est disponible uniquement dans .NET 8 et les versions ultérieures où les valeurs peuvent être conservées sur la pile.

Options

Les options spécifient le comportement que vous voulez que la règle applique. Pour plus d’informations sur la configuration des options, consultez format d’options.

dotnet_style_prefer_collection_expression

Propriété Valeur Description
nom de l’option dotnet_style_prefer_collection_expression
Valeurs d’option true | when_types_exactly_match Préférez utiliser des expressions de collection.
false | never Il désactive la règle.
valeur d’option par défaut true

Exemple

// Code with violations.
ReadOnlySpan<int> x = stackalloc int[] { 1, 2, 3 };

// Fixed code.
ReadOnlySpan<int> x = [1, 2, 3];

Supprimer un avertissement

Si vous souhaitez supprimer une seule violation, ajoutez des directives de préprocesseur à votre fichier source pour désactiver, puis réactivez la règle.

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

Pour désactiver la règle d’un fichier, d’un dossier ou d’un projet, définissez sa gravité sur none dans le fichier de configuration .

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

Pour désactiver toutes les règles de style de code, définissez la gravité de la catégorie Style sur none dans le fichier de configuration .

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

Pour plus d’informations, consultez Comment supprimer les avertissements d’analyse du code.

Voir aussi