CA1016: アセンブリに AssemblyVersionAttribute を設定します

プロパティ
ルール ID CA1016
Title アセンブリに AssemblyVersionAttribute を設定します
[カテゴリ] デザイン
修正が中断ありか中断なしか なし
.NET 8 では既定で有効 提案として

原因

アセンブリにバージョン番号がありません。

規則の説明

アセンブリの ID は、次の情報で構成されます。

  • [アセンブリ名]

  • バージョン番号

  • カルチャ

  • 公開キー (厳密な名前を持つアセンブリの場合)

.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

関連項目