CA1016: помечать сборки атрибутом AssemblyVersionAttribute
Свойство | Значение |
---|---|
Идентификатор правила | CA1016 |
Заголовок | Пометьте сборки с помощью AssemblyVersionAttribute |
Категория | Проектирование |
Исправление является критическим или не критическим | Не критическое |
Включен по умолчанию в .NET 9 | Как предложение |
Причина
Сборка не имеет номера версии.
Описание правила
Удостоверение сборки состоит из следующих сведений:
Имя сборки
Номер версии
Культура
Открытый ключ (для сборок со строгими именами).
.NET использует номер версии для уникальной идентификации сборки и привязки к типам в сборках со строгими именами. Номер версии используется наряду с политикой версий и издателя. По умолчанию приложения выполняются только с версией сборки, которая использовалась для их построения.
Устранение нарушений
Чтобы устранить нарушение этого правила, добавьте номер версии в сборку с помощью атрибута System.Reflection.AssemblyVersionAttribute.
Когда лучше отключить предупреждения
Не отключайте предупреждение из этого правила для сборок, которые используются сторонними участниками или в рабочей среде.
Отключение предупреждений
Если вы просто хотите отключить одно нарушение, добавьте директивы препроцессора в исходный файл, чтобы отключить и повторно включить правило.
#pragma warning disable CA1016
// The code that's violating the rule is on this line.
#pragma warning restore CA1016
Чтобы отключить правило для файла, папки или проекта, задайте его серьезность none
в файле конфигурации.
[*.{cs,vb}]
dotnet_diagnostic.CA1016.severity = none
Дополнительные сведения см. в разделе Практическое руководство. Скрытие предупреждений анализа кода.
Пример
В следующем примере показана сборка с примененным атрибутом AssemblyVersionAttribute.
using System;
using System.Reflection;
[assembly: AssemblyVersionAttribute("4.3.2.1")]
namespace DesignLibrary {}
<Assembly: AssemblyVersionAttribute("4.3.2.1")>
Namespace DesignLibrary
End Namespace