Ad alanı klasör yapısıyla eşleşmiyor (IDE0130)
Özellik | Değer |
---|---|
Kural Kimliği | IDE0130 |
Başlık | Ad alanı klasör yapısıyla eşleşmiyor |
Kategori | Stil |
Alt Kategori | Dil kuralları (ifade düzeyi tercihleri) |
Geçerli diller | C# ve Visual Basic |
Seçenekler | dotnet_style_namespace_match_folder |
Genel Bakış
Bu stil kuralı, ad alanı adlandırma gereksinimlerini zorlamak için projenin klasör yapısını kullanır.
Seçenekler
Seçenekler, kuralın zorlamasını istediğiniz davranışı belirtir. Seçenekleri yapılandırma hakkında bilgi için bkz. Seçenek biçimi.
dotnet_style_namespace_match_folder
Özellik | Değer | Açıklama |
---|---|---|
Seçenek adı | dotnet_style_namespace_match_folder | |
Seçenek değerleri | true |
Klasör yapısıyla eşleştirmek için ad alanı adlandırmayı tercih edin. |
false |
Kuralı devre dışı bırakır. | |
Varsayılan seçenek değeri | true |
Not
seçeneği dotnet_style_namespace_match_folder
, geçerli projenin ve kök ad alanı özelliklerinin bilinmesine bağlıdır. Bu bilgiler Visual Studio tarafından sağlanır ancak gibi dotnet build
komut satırı derlemelerinde kullanılamaz. Komut satırı derlemelerinin çalışması için proje dosyanıza aşağıdaki özellikleri eklemeniz gerekir:
<ItemGroup>
<CompilerVisibleProperty Include="RootNamespace" />
<CompilerVisibleProperty Include="ProjectDir" />
</ItemGroup>
Örnek
Aşağıdaki kod parçacıklarının, proje dosyasındaki klasör yapısını temsil eden Data
veya Data/Example.vb
adlı Data/Example.cs
bir dosyadan geldiğini varsayalım. Klasör yapısı adlandırması kök ad alanına eklenir ve bu örnekte de şeklindedir 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
Uyarıyı gizleme
Yalnızca tek bir ihlali engellemek istiyorsanız, kuralı devre dışı bırakmak ve sonra yeniden etkinleştirmek için kaynak dosyanıza önişlemci yönergeleri ekleyin.
#pragma warning disable IDE0130
// The code that's violating the rule is on this line.
#pragma warning restore IDE0130
Bir dosya, klasör veya projenin kuralını devre dışı bırakmak için, yapılandırma dosyasındaki önem derecesini none
olarak ayarlayın.
[*.{cs,vb}]
dotnet_diagnostic.IDE0130.severity = none
Kod stili kuralların tümünü devre dışı bırakmak için Style
none
, kategorinin önem derecesini yapılandırma dosyasında olarak ayarlayın.
[*.{cs,vb}]
dotnet_analyzer_diagnostic.category-Style.severity = none
Daha fazla bilgi için bkz. Kod analizi uyarılarını gizleme.