Partager via


L’espace de noms ne correspond pas à la structure des dossiers (IDE0130)

Propriété Valeur
Identificateur de la règle IDE0130
Titre L’espace de noms ne correspond pas à la structure des dossiers
Catégorie Style
sous-catégorie Règles de langage (préférences au niveau de l’expression)
langues applicables C# et Visual Basic
Options dotnet_style_namespace_match_folder

Aperçu

Cette règle de style utilise la structure des dossiers du projet pour appliquer les exigences de nommage de l’espace de noms.

Options

Les options spécifient le comportement que vous souhaitez que la règle fasse respecter. Pour plus d’informations sur la configuration des options, consultez Format des options.

dotnet_style_namespace_match_folder

Propriété Valeur Description
nom de l’option dotnet_style_namespace_match_folder
Valeurs d’option true Préférez le nommage de l’espace de noms pour correspondre à la structure des dossiers.
false Il désactive la règle.
valeur d’option par défaut true

Remarque

L’option dotnet_style_namespace_match_folder dépend de la connaissance des propriétés actuelles du projet et de l’espace de noms racine. Ces informations sont fournies par Visual Studio, mais elles ne sont pas disponibles pour les builds de ligne de commande, telles que dotnet build. Pour que les builds de ligne de commande fonctionnent, vous devez ajouter les propriétés suivantes à votre fichier projet :

<ItemGroup>
  <CompilerVisibleProperty Include="RootNamespace" />
  <CompilerVisibleProperty Include="ProjectDir" />
</ItemGroup>

Exemple

Supposons que les extraits de code suivants proviennent d’un fichier nommé Data/Example.cs ou Data/Example.vb, où Data représente la structure de dossiers à partir du fichier projet. Le nommage de la structure des dossiers est ajouté à l’espace de noms racine, qui dans cet exemple est Root.

// Code with violations
namespace Root.BadExample
{
    class Example
    {
        public void M()
        {
        }
    }
}

// Fixed code
namespace Root.Data
{
    class Example
    {
        public void M()
        {
        }
    }
}
' Code with violations
Namespace Root.BadExample
    Class Example
        Public Sub M()
        End Sub
    End Class
End Namespace

' Fixed code
Namespace Root.Data
    Class Example
        Public Sub M()
        End Sub
    End Class
End Namespace

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 IDE0130
// The code that's violating the rule is on this line.
#pragma warning restore IDE0130

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.IDE0130.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