CA1016: Oznacz zestawy za pomocą AssemblyVersionAttribute
Właściwości | Wartość |
---|---|
Identyfikator reguły | CA1016 |
Tytuł | Oznacz zestawy atrybutem AssemblyVersion |
Kategoria | Projekt |
Poprawka powodująca niezgodność lub niezgodność | Niezgodność |
Domyślnie włączone na platformie .NET 9 | Jako sugestia |
Przyczyna
Zestaw nie ma numeru wersji.
Opis reguły
Tożsamość zestawu składa się z następujących informacji:
Nazwa zestawu
Numer wersji
Kultura
Klucz publiczny (w przypadku zestawów o silnie nazwanych nazwach).
Platforma .NET używa numeru wersji, aby jednoznacznie zidentyfikować zestaw i powiązać z typami w silnie nazwanych zestawach. Numer wersji jest używany razem z zasadami wersji i wydawcy. Domyślnie aplikacje są uruchamiane tylko z wersji zestawu, z którego zostały zbudowane.
Jak naprawić naruszenia
Aby naprawić naruszenie tej reguły, dodaj numer wersji do zestawu przy użyciu atrybutu System.Reflection.AssemblyVersionAttribute .
Kiedy pomijać ostrzeżenia
Nie pomijaj ostrzeżenia z tej reguły dla zestawów używanych przez osoby trzecie lub w środowisku produkcyjnym.
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 CA1016
// The code that's violating the rule is on this line.
#pragma warning restore CA1016
Aby wyłączyć regułę dla pliku, folderu lub projektu, ustaw jego ważność na none
w pliku konfiguracji.
[*.{cs,vb}]
dotnet_diagnostic.CA1016.severity = none
Aby uzyskać więcej informacji, zobacz Jak pominąć ostrzeżenia dotyczące analizy kodu.
Przykład
W poniższym przykładzie pokazano zestaw, który ma AssemblyVersionAttribute zastosowany atrybut.
using System;
using System.Reflection;
[assembly: AssemblyVersionAttribute("4.3.2.1")]
namespace DesignLibrary {}
<Assembly: AssemblyVersionAttribute("4.3.2.1")>
Namespace DesignLibrary
End Namespace