この記事では、AssemblyInfo.cs ファイルで AssemblyVersion
属性と AssemblyFileVersion
属性を使用する方法について説明します。
元の製品バージョン: .NET Framework
元の KB 番号: 556041
まとめ
AssemblyInfo.csには、2 種類のバージョンを設定するための 2 つの属性が用意されています。 このヒントでは、これら 2 つの属性を使用する方法を示します。
Microsoft .NET Framework では、2 種類のバージョン番号を各アセンブリに設定できます。
AssemblyVersion
これは、ビルド中と実行時にアセンブリを検索、リンク、読み込む際にフレームワークによって使用されるバージョン番号です。 プロジェクト内の任意のアセンブリへの参照を追加すると、このバージョン番号が埋め込まれます。 実行時に、共通言語ランタイム (CLR) は、読み込むこのバージョン番号を持つアセンブリを検索します。 ただし、このバージョンは、アセンブリが厳密な名前の署名付きである場合にのみ、名前、公開キー トークン、カルチャ情報と共に使用されることに注意してください。 アセンブリが厳密な名前付き署名されていない場合、読み込みにはファイル名のみが使用されます。
AssemblyFileVersion
これは、ファイル システムと同様にファイルに指定されたバージョン番号です。 これは Windows エクスプローラーによって表示され、参照のために .NET Framework またはランタイムで使用されることはありません。
AssemblyInfo.csの属性
// Version information for an assembly consists of the following four values:
// Major Version
// Minor Version
// Build Number
// Revision
[assembly: AssemblyVersion("1.0.0.0")]
[assembly: AssemblyFileVersion("1.0.0.0")]
絶対数の代わりに (*) を指定すると、コンパイラはビルドするたびに 1 ずつ数を増やします。
アプリケーション アセンブリのビルド中に多くの開発者が使用するプロジェクト用のフレームワーク アセンブリを構築しているとします。 新しいバージョンのアセンブリを頻繁にリリースする場合 (たとえば、毎日 1 回)、アセンブリに厳密な名前が付けられている場合、開発者は新しいアセンブリをリリースするたびに参照を変更する必要があります。 面倒な場合があり、間違った参照につながる可能性もあります。 このような閉じたグループや揮発性のシナリオでは、 AssemblyVersion
を修正し、 AssemblyFileVersion
のみを変更することをお勧めします。 アセンブリ ファイルのバージョン番号を使用して、アセンブリの最新リリースを伝えます。 この場合、開発者は参照を変更する必要がなくなり、参照パス内のアセンブリを上書きできます。 中央リリースビルドまたは最終リリースビルドでは、 AssemblyVersion
を変更し、ほとんどの場合、 AssemblyFileVersion
アセンブリバージョンと同じ状態に保つ方が理にかなっています。