AssemblyVersionAttribute クラス

定義

属性を付けるアセンブリのバージョンを指定します。

public ref class AssemblyVersionAttribute sealed : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)]
public sealed class AssemblyVersionAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=false)]
public sealed class AssemblyVersionAttribute : Attribute
[System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)]
[System.Runtime.InteropServices.ComVisible(true)]
public sealed class AssemblyVersionAttribute : Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)>]
type AssemblyVersionAttribute = class
    inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, AllowMultiple=false)>]
type AssemblyVersionAttribute = class
    inherit Attribute
[<System.AttributeUsage(System.AttributeTargets.Assembly, Inherited=false)>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type AssemblyVersionAttribute = class
    inherit Attribute
Public NotInheritable Class AssemblyVersionAttribute
Inherits Attribute
継承
AssemblyVersionAttribute
属性

次の例では、この属性を AssemblyVersionAttribute 使用してアセンブリにバージョン番号を割り当てます。 コンパイル時に、このバージョン情報はアセンブリのメタデータと共に格納されます。 実行時に、この例では、実行中の Type.Assembly アセンブリへの参照を取得するためにアセンブリ内で見つかった型のプロパティの値を取得し、メソッドによって返されるオブジェクトのプロパティから Version アセンブリの AssemblyName バージョン情報を Assembly.GetName 取得します。

using System;
using System.Reflection;

[assembly:AssemblyVersionAttribute("2.0.1")]

public class Example1
{
   public static void Main()
   {
      Assembly thisAssem = typeof(Example1).Assembly;
      AssemblyName thisAssemName = thisAssem.GetName();
       
      Version ver = thisAssemName.Version;
       
      Console.WriteLine("This is version {0} of {1}.", ver, thisAssemName.Name);    
   }
}
// The example displays the following output:
//        This is version 2.0.1.0 of Example1.
Imports System.Reflection

<Assembly:AssemblyVersionAttribute("2.0.1")>
Module Example1
   Public Sub Main()
       Dim thisAssem As Assembly = GetType(Example1).Assembly
       Dim thisAssemName As AssemblyName = thisAssem.GetName()
       
       Dim ver As Version = thisAssemName.Version
       
       Console.WriteLine("This is version {0} of {1}.", ver, thisAssemName.Name)    
   End Sub
End Module
' The example displays the following output:
'      This is version 2.0.1.0 of Example1.

注釈

この AssemblyVersionAttribute 属性は、アセンブリにバージョン番号を割り当てるために使用されます。 そのバージョン番号は、アセンブリのメタデータと共に格納されます。

アセンブリのバージョン番号はアセンブリの固有名の一部であるため、アセンブリへのバインディング、およびバージョンのポリシーは、重要な部分を果たします。 ランタイムの既定のバージョン ポリシーは、構成ファイル (アプリケーション構成ファイル、発行者ポリシー ファイル、コンピューター管理者の構成ファイル) に指定した明示的なバージョン ポリシーでオーバーライドされない限り、アプリケーションが作成およびテストされた時点のバージョンの場合にだけそのアプリケーションを実行します。 詳細については、「 .NET のアセンブリ 」を参照してください。

注意

バージョンのチェックは、厳密な名前付きのアセンブリに対してだけ実行されます。

バージョン番号には、4 つのコンポーネントがあります。

<major version>.<minor version>.<build number>.<revision>

重要

バージョンのすべてのコンポーネントは、0 以上の整数である必要があります。 メタデータの制約によって、アセンブリにおけるメジャー、マイナー、ビルド、およびリビジョン コンポーネントの最大値は、UInt16.MaxValue- 1 です。 コンポーネントがこの値を超えている場合、コンパイル エラーが発生します。

すべての値を指定するか、アスタリスク (*) を使用して、既定のビルド番号、リビジョン番号を受け入れることができます。 たとえば、[assembly:AssemblyVersion("2.3.25.1")] はメジャー バージョン 2、マイナー バージョン 3、ビルド番号は 25、およびリビジョン番号として 1 を示します。 バージョン番号が [assembly:AssemblyVersion("1.2.*")] の場合は、メジャー バージョンとして 1、マイナー バージョンとして 2 を指定し、既定のビルドおよびリビジョン番号を受け入れます。 バージョン番号が [assembly:AssemblyVersion("1.2.15.*")] の場合は、メジャー バージョンとして 1、マイナー バージョンとして 2、ビルド番号として 15 を指定し、既定のリビジョン番号を受け入れます。 既定のビルド番号は、日ごとにインクリメントします。 既定のリビジョン番号は、(サマータイムによる調整を考慮せずに)現地時間の午前 0 時からの経過秒を 2 で割った値です。

注意

ビルド番号のにアスタリスクを指定すると、リビジョン番号を指定することはできません。

アセンブリのメジャーおよびマイナー バージョンは、アセンブリをエクスポートするときに、タイプ ライブラリのバージョン番号として使用されます。 一部の COM ホストは、0.0 のバージョン番号を持つタイプ ライブラリを使用することはできません。 したがって、アセンブリを COM クライアントに公開する場合は、2005 年Visual Studio外部でAssemblyVersionAttribute作成され、指定されていないAssemblyVersionAttributeプロジェクトのアセンブリ バージョンをページの 1.0 に明示的に設定します。 アセンブリのバージョンが 0.0 の場合でも、この操作を行います。 Visual Studio 2005 で作成されたすべてのプロジェクトの既定のアセンブリ バージョンは 1.0.* です。

読み込んだアセンブリの名前を取得するには、アセンブリを呼び出 GetName して取得 AssemblyNameし、プロパティを Version 取得します。 読み込まれていないアセンブリの名前を取得するには、クライアント アプリケーションから呼び出 GetAssemblyName して、アプリケーションが使用するアセンブリのバージョンを確認します。

AssemblyVersionAttribute属性は、1 回のみ適用できます。 一部の Visual Studio プロジェクト テンプレートには、属性が既に含まれています。 これらのプロジェクトの場合、コードで属性を追加すると、コンパイラ エラーが発生します。

コンストラクター

AssemblyVersionAttribute(String)

属性を付けるアセンブリのバージョン番号を指定して、AssemblyVersionAttribute クラスの新しいインスタンスを初期化します。

プロパティ

TypeId

派生クラスで実装されると、この Attribute の一意の識別子を取得します。

(継承元 Attribute)
Version

属性付きアセンブリのバージョン番号を取得します。

メソッド

Equals(Object)

このインスタンスが、指定されたオブジェクトと等価であるかどうかを示す値を返します。

(継承元 Attribute)
GetHashCode()

このインスタンスのハッシュ コードを返します。

(継承元 Attribute)
GetType()

現在のインスタンスの Type を取得します。

(継承元 Object)
IsDefaultAttribute()

派生クラスでオーバーライドされるとき、このインスタンスの値が派生クラスの既定値であるかどうかを示します。

(継承元 Attribute)
Match(Object)

派生クラス内でオーバーライドされたときに、指定したオブジェクトとこのインスタンスが等しいかどうかを示す値を返します。

(継承元 Attribute)
MemberwiseClone()

現在の Object の簡易コピーを作成します。

(継承元 Object)
ToString()

現在のオブジェクトを表す文字列を返します。

(継承元 Object)

明示的なインターフェイスの実装

_Attribute.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr)

一連の名前を対応する一連のディスパッチ識別子に割り当てます。

(継承元 Attribute)
_Attribute.GetTypeInfo(UInt32, UInt32, IntPtr)

オブジェクトの型情報を取得します。この情報はインターフェイスの型情報の取得に使用できます。

(継承元 Attribute)
_Attribute.GetTypeInfoCount(UInt32)

オブジェクトが提供する型情報インターフェイスの数 (0 または 1) を取得します。

(継承元 Attribute)
_Attribute.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr)

オブジェクトによって公開されたプロパティおよびメソッドへのアクセスを提供します。

(継承元 Attribute)

適用対象

こちらもご覧ください