L’espace de noms ne correspond pas à la structure des dossiers (IDE0130)
Propriété | Value |
---|---|
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) |
Langages applicables | C# et Visual Basic |
Options | dotnet_style_namespace_match_folder |
Vue d’ensemble
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 applique. Pour plus d’informations sur la configuration des options, consultez Format d’option.
dotnet_style_namespace_match_folder
Propriété | Valeur | Description |
---|---|---|
Nom d'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 |
Notes
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 ne sont pas disponibles pour les builds en ligne de commande, telles que dotnet build
. Pour que les builds en 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 des dossiers 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 voulez supprimer une seule violation, ajoutez des directives de préprocesseur à votre fichier source pour désactiver et réactiver 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 sur un fichier, un dossier ou 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 de l’analyse de code.