英語で読む

次の方法で共有


Type.Assembly プロパティ

定義

型が宣言される Assembly を取得します。 ジェネリック型の場合は、ジェネリック型が定義される Assembly を取得します。

C#
public abstract System.Reflection.Assembly Assembly { get; }

プロパティ値

現在の型を含むアセンブリを説明する Assembly インスタンス。 ジェネリック型の場合、インスタンスは特定の構築型を作成および使用するアセンブリではなく、ジェネリック型定義を含むアセンブリを説明します。

実装

次の例では、 クラスに関連付けられているアセンブリ名と、型の完全修飾名を表示します。

C#
using System;

class MyAssemblyClass
{
    public static void Main()
    {
        Type objType = typeof(Array);

        // Print the assembly full name.
        Console.WriteLine($"Assembly full name:\n   {objType.Assembly.FullName}.");

        // Print the assembly qualified name.
        Console.WriteLine($"Assembly qualified name:\n   {objType.AssemblyQualifiedName}.");
    }
}
// The example displays the following output if run under the .NET Framework 4.5:
//    Assembly full name:
//       mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089.
//    Assembly qualified name:
//       System.Array, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089.

注釈

現在 Type の オブジェクトが構築されたジェネリック型を表す場合、このプロパティはジェネリック型定義を含むアセンブリを返します。 たとえば、ジェネリック型定義 MyGenericStack<T> を含む MyGenerics.dll という名前のアセンブリを作成するとします (MyGenericStack(Of T) Visual Basic では C generic<T> ref class MyGenericStack ++ の場合)。 別のアセンブリで (MyGenericStack(Of Integer) Visual Basic では ) のMyGenericStack<int>インスタンスを作成すると、Assembly構築された型の プロパティは、MyGenerics.dllをAssembly表すオブジェクトを返します。

同様に、現在 Type の オブジェクトが未割り当てジェネリック パラメーター Tを表す場合、このプロパティは を定義するジェネリック型を含むアセンブリを返します T

プロパティが Type.Assembly .NET Core やユニバーサル Windows プラットフォームなどの特定の .NET 実装で使用できない場合は、代わりに プロパティをTypeInfo.Assembly使用します。

このプロパティは読み取り専用です。

適用対象

製品 バージョン
.NET Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9, 10
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1