Udostępnij za pośrednictwem


CA1724: Nazwy typów nie powinny być zgodne z przestrzeniami nazw

Właściwości Wartość
Identyfikator reguły CA1724
Tytuł Nazwy typów nie powinny być zgodne z przestrzeniami nazw
Kategoria Nazewnictwo
Poprawka powodująca niezgodność lub niezgodność Kluczowa
Domyślnie włączone na platformie .NET 9 Nie.

Przyczyna

Nazwa typu jest zgodna z przywołyną nazwą przestrzeni nazw, która ma co najmniej jeden typ widoczny zewnętrznie. Porównanie nazw jest niewrażliwe na wielkość liter.

Opis reguły

Nazwy typów utworzonych przez użytkownika nie powinny być zgodne z nazwami przywoływałych przestrzeni nazw, które mają widoczne zewnętrznie typy. Naruszenie tej reguły może zmniejszyć użyteczność biblioteki.

Jak naprawić naruszenia

Zmień nazwę typu, tak aby nie był zgodny z nazwą przywoływnej przestrzeni nazw, która ma widoczne zewnętrznie typy.

Kiedy pomijać ostrzeżenia

W przypadku nowego programowania nie ma znanych scenariuszy, w których należy pominąć ostrzeżenie z tej reguły. Przed pominięciem ostrzeżenia należy dokładnie zastanowić się, jak użytkownicy biblioteki mogą być zdezorientowani przez zgodną nazwę. W przypadku bibliotek wysyłkowych może być konieczne pominięcie ostrzeżenia z tej reguły.

Pomijanie ostrzeżenia

Jeśli chcesz po prostu pominąć pojedyncze naruszenie, dodaj dyrektywy preprocesora do pliku źródłowego, aby wyłączyć, a następnie ponownie włączyć regułę.

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

Aby wyłączyć regułę dla pliku, folderu lub projektu, ustaw jego ważność na none w pliku konfiguracji.

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

Aby uzyskać więcej informacji, zobacz Jak pominąć ostrzeżenia dotyczące analizy kodu.

Przykład

namespace MyNamespace
{
    // This class violates the rule
    public class System
    {
    }
}