Delen via


Naamruimte komt niet overeen met mapstructuur (IDE0130)

Eigenschap Waarde
Regel-ID IDE0130
titel Naamruimte komt niet overeen met mapstructuur
Categorie Stijl
Subcategorie Taalregels (voorkeuren op expressieniveau)
Toepasselijke talen C# en Visual Basic
opties dotnet_style_namespace_match_folder

Overzicht

Deze stijlregel maakt gebruik van de mapstructuur van het project om naamruimtenaamgevingsvereisten af te dwingen.

Opties

Met opties geeft u het gedrag op dat door de regel moet worden afgedwongen. Zie Option-indelingvoor meer informatie over het configureren van opties.

dotnet_style_namespace_match_folder

Eigendom Waarde Beschrijving
Optienaam dotnet_style_namespace_match_folder
optiewaarden true Geef de voorkeur aan naamruimtenaamgeving die overeenkomt met de mapstructuur.
false Schakelt de regel uit.
standaardoptiewaarde true

Notitie

De optie dotnet_style_namespace_match_folder is afhankelijk van het kennen van de eigenschappen van het huidige project en de hoofdnaamruimte. Deze informatie wordt geleverd door Visual Studio, maar is niet beschikbaar voor command-line builds, zoals dotnet build. Voor het werken met opdrachtregel-builds moet u de volgende eigenschappen toevoegen aan uw projectbestand.

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

Voorbeeld

Stel dat de volgende codefragmenten afkomstig zijn van een bestand met de naam Data/Example.cs of Data/Example.vb, waarbij Data de mapstructuur uit het projectbestand vertegenwoordigt. De naamgeving van de mapstructuur wordt toegevoegd aan de hoofdnaamruimte, die in dit voorbeeld Rootis.

// 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

Een waarschuwing onderdrukken

Als u slechts één schending wilt onderdrukken, voegt u preprocessorrichtlijnen toe aan uw bronbestand om de regel uit te schakelen en vervolgens opnieuw in te schakelen.

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

Als u de regel voor een bestand, map of project wilt uitschakelen, stelt u de ernst ervan in op none in het configuratiebestand.

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

Als u alle regels voor de codestijl wilt uitschakelen, stelt u de ernst voor de categorie Style in op none in het configuratiebestand.

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

Voor meer informatie, zie Hoe codeanalysewaarschuwingen te onderdrukken.

Zie ook