CA1515: Rozważ wprowadzenie typów publicznych wewnętrznych

Właściwości Wartość
Identyfikator reguły CA1515
Stanowisko Rozważ wprowadzenie typów publicznych wewnętrznych
Kategoria Łatwość konserwacji
Poprawka powodująca niezgodność lub niezgodność Niezgodność
Domyślnie włączone na platformie .NET 8 Nie.

Przyczyna

Typ wewnątrz zestawu wykonywalnego jest zadeklarowany jako publiczny.

Opis reguły

W przeciwieństwie do biblioteki klas interfejs API aplikacji nie jest zwykle publicznie przywołyny, więc typy można oznaczyć jako internal.

Z kolei typy wewnętrzne mogą korzystać z różnych analizatorów kodu przeznaczonych dla interfejsów API innych niż publiczne.

Jak naprawić naruszenia

Oznacz typ jako internal.

Przykład

Poniższy fragment kodu przedstawia naruszenie ca1515:

// Inside a project with <OutputKind>Exe</OutputKind>
public class Program
{
    public static void Main(string[] args)
    {
    }
}
Public Class Program
    Public Shared Sub Main(args As string())
    End Sub
End Class

Poniższy fragment kodu naprawia naruszenie:

// Inside a project with <OutputKind>Exe</OutputKind>
internal class Program
{
    public static void Main(string[] args)
    {
    }
}
Friend Class Program
    Public Shared Sub Main(args As string())
    End Sub
End Class

Kiedy pomijać ostrzeżenia

Można bezpiecznie pominąć naruszenie tej reguły, jeśli nie martwisz się o konserwację kodu.

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

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

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

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