Module.GetType メソッド

定義

指定した型を返します。Returns the specified type.

オーバーロード

GetType(String)

大文字小文字を区別する検索を実行して、指定された型を返します。Returns the specified type, performing a case-sensitive search.

GetType(String, Boolean)

指定された大文字と小文字の区別でモジュールを検索し、指定された型を返します。Returns the specified type, searching the module with the specified case sensitivity.

GetType(String, Boolean, Boolean)

大文字小文字を区別したモジュール検索を実行するかどうか、および型が見つからない場合に例外をスローするかどうかを指定して、指定された型を返します。Returns the specified type, specifying whether to make a case-sensitive search of the module and whether to throw an exception if the type cannot be found.

GetType(String)

大文字小文字を区別する検索を実行して、指定された型を返します。Returns the specified type, performing a case-sensitive search.

public:
 virtual Type ^ GetType(System::String ^ className);
[System.Runtime.InteropServices.ComVisible(true)]
public virtual Type GetType (string className);
override this.GetType : string -> Type
Public Overridable Function GetType (className As String) As Type

パラメーター

className
String

検索対象の型の名前。The name of the type to locate. この名前は、名前空間を含む完全修飾名であることが必要です。The name must be fully qualified with the namespace.

戻り値

型がこのモジュールに含まれている場合は、指定された型を表す Type オブジェクト。それ以外の場合は nullA Type object representing the given type, if the type is in this module; otherwise, null.

属性

例外

classNamenull です。className is null.

クラスの初期化子が呼び出され、例外がスローされます。The class initializers are invoked and an exception is thrown.

className は長さゼロの文字列です。className is a zero-length string.

className には、見つからなかった依存アセンブリが必要です。className requires a dependent assembly that could not be found.

className には、見つかったものの読み込めなかった依存アセンブリが必要です。className requires a dependent assembly that was found but could not be loaded.

または-or- 現在のアセンブリはリフレクションのみのコンテキストに読み込まれましたが、className には事前に読み込まれていない依存アセンブリが必要です。The current assembly was loaded into the reflection-only context, and className requires a dependent assembly that was not preloaded.

className には依存アセンブリが必要ですが、ファイルは有効なアセンブリではありません。className requires a dependent assembly, but the file is not a valid assembly.

- または --or- className には、現在読み込まれているバージョンより新しいバージョンのランタイム用にコンパイルされた依存アセンブリが必要です。className requires a dependent assembly which was compiled for a version of the runtime later than the currently loaded version.

次の例では、指定されたモジュール内の型の名前を表示します。The following example displays the name of a type in the specified module.

using namespace System;
using namespace System::Reflection;

namespace ReflectionModule_Examples
{
   public ref class MyMainClass{};

}

int main()
{
   array<Module^>^moduleArray;
   moduleArray = ReflectionModule_Examples::MyMainClass::typeid->Assembly->GetModules( false );
   
   //In a simple project with only one module, the module at index
   // 0 will be the module containing these classes.
   Module^ myModule = moduleArray[ 0 ];
   Type^ myType;
   myType = myModule->GetType( "ReflectionModule_Examples.MyMainClass" );
   Console::WriteLine( "Got type: {0}", myType );
}

using System;
using System.Reflection;

namespace ReflectionModule_Examples
{
    class MyMainClass
    {
        static void Main()
        {
            Module[] moduleArray;
            
            moduleArray = typeof(MyMainClass).Assembly.GetModules(false);
            
            //In a simple project with only one module, the module at index
            // 0 will be the module containing these classes.
            Module myModule = moduleArray[0];

            Type myType;

            myType = myModule.GetType("ReflectionModule_Examples.MyMainClass");
            Console.WriteLine("Got type: {0}", myType.ToString());
        }
    }
}
Imports System.Reflection

'This code assumes that the root namespace is set to empty("").
Namespace ReflectionModule_Examples
    Class MyMainClass
        Shared Sub Main()
            Dim moduleArray() As [Module]

            moduleArray = GetType(MyMainClass).Assembly.GetModules(False)

            'In a simple project with only one module, the module at index
            ' 0 will be the module containing these classes.
            Dim myModule As [Module] = moduleArray(0)

            Dim myType As Type

            myType = myModule.GetType("ReflectionModule_Examples.MyMainClass")
            Console.WriteLine("Got type: {0}", myType.ToString())
        End Sub
    End Class
End Namespace 'ReflectionModule_Examples

注釈

注意

型が別のアセンブリに転送されている場合でも、このメソッドによって返されます。If the type has been forwarded to another assembly, it is still returned by this method. 型の転送の詳細については、「共通言語ランタイムでの型の転送」を参照してください。For information on type forwarding, see Type Forwarding in the Common Language Runtime.

@No__t-0 を使用して、特定のモジュールから型を取得できます。A type can be retrieved from a specific module using Module.GetType. マニフェストを含むモジュールで Module.GetType を呼び出すと、アセンブリ全体が検索されません。Calling Module.GetType on the module that contains the manifest will not search the entire assembly. アセンブリに含まれるモジュールに関係なく、アセンブリから型を取得するには、Assembly.GetType を呼び出す必要があります。To retrieve a type from an assembly, regardless of which module it is in, you must call Assembly.GetType.

GetType(String, Boolean)

指定された大文字と小文字の区別でモジュールを検索し、指定された型を返します。Returns the specified type, searching the module with the specified case sensitivity.

public:
 virtual Type ^ GetType(System::String ^ className, bool ignoreCase);
[System.Runtime.InteropServices.ComVisible(true)]
public virtual Type GetType (string className, bool ignoreCase);
override this.GetType : string * bool -> Type
Public Overridable Function GetType (className As String, ignoreCase As Boolean) As Type

パラメーター

className
String

検索対象の型の名前。The name of the type to locate. この名前は、名前空間を含む完全修飾名であることが必要です。The name must be fully qualified with the namespace.

ignoreCase
Boolean

大文字小文字を区別しない検索を行う場合は true。それ以外の場合は falsetrue for case-insensitive search; otherwise, false.

戻り値

型がこのモジュールに含まれている場合は、指定された型を表す Type オブジェクト。それ以外の場合は nullA Type object representing the given type, if the type is in this module; otherwise, null.

属性

例外

classNamenull です。className is null.

クラスの初期化子が呼び出され、例外がスローされます。The class initializers are invoked and an exception is thrown.

className は長さゼロの文字列です。className is a zero-length string.

className には、見つからなかった依存アセンブリが必要です。className requires a dependent assembly that could not be found.

className には、見つかったものの読み込めなかった依存アセンブリが必要です。className requires a dependent assembly that was found but could not be loaded.

- または --or- 現在のアセンブリはリフレクションのみのコンテキストに読み込まれましたが、className には事前に読み込まれていない依存アセンブリが必要です。The current assembly was loaded into the reflection-only context, and className requires a dependent assembly that was not preloaded.

className には依存アセンブリが必要ですが、ファイルは有効なアセンブリではありません。className requires a dependent assembly, but the file is not a valid assembly.

または-or- className には、現在読み込まれているバージョンより新しいバージョンのランタイム用にコンパイルされた依存アセンブリが必要です。className requires a dependent assembly which was compiled for a version of the runtime later than the currently loaded version.

次の例では、指定されたモジュール内の型の名前を表示します。この場合、ignoreCase パラメーターに false を指定すると、大文字小文字は無視されません。The following example displays the name of a type in the specified module, specifying false for the ignoreCase parameter so that case will not be ignored.

using namespace System;
using namespace System::Reflection;

namespace ReflectionModule_Examples
{
   public ref class MyMainClass{};

}

int main()
{
   array<Module^>^moduleArray;
   moduleArray = ReflectionModule_Examples::MyMainClass::typeid->Assembly->GetModules( false );
   
   //In a simple project with only one module, the module at index
   // 0 will be the module containing these classes.
   Module^ myModule = moduleArray[ 0 ];
   Type^ myType;
   myType = myModule->GetType( "ReflectionModule_Examples.MyMainClass", false );
   Console::WriteLine( "Got type: {0}", myType );
}

using System;
using System.Reflection;

namespace ReflectionModule_Examples
{
    class MyMainClass
    {
        static void Main()
        {
            Module[] moduleArray;
            
            moduleArray = typeof(MyMainClass).Assembly.GetModules(false);
            
            //In a simple project with only one module, the module at index
            // 0 will be the module containing these classes.
            Module myModule = moduleArray[0];

            Type myType;
            myType = myModule.GetType("ReflectionModule_Examples.MyMainClass", false);
            Console.WriteLine("Got type: {0}", myType.ToString());
        }
    }
}
Imports System.Reflection

'This code assumes that the root namespace is set to empty("").
Namespace ReflectionModule_Examples
    Class MyMainClass
        Shared Sub Main()
            Dim moduleArray() As [Module]

            moduleArray = GetType(MyMainClass).Assembly.GetModules(False)

            'In a simple project with only one module, the module at index
            ' 0 will be the module containing these classes.
            Dim myModule As [Module] = moduleArray(0)

            Dim myType As Type
            myType = myModule.GetType("ReflectionModule_Examples.MyMainClass", False)
            Console.WriteLine("Got type: {0}", myType.ToString())
        End Sub
    End Class
End Namespace 'ReflectionModule_Examples

注釈

注意

型が別のアセンブリに転送されている場合でも、このメソッドによって返されます。If the type has been forwarded to another assembly, it is still returned by this method. 型の転送の詳細については、「共通言語ランタイムでの型の転送」を参照してください。For information on type forwarding, see Type Forwarding in the Common Language Runtime.

@No__t-0 を使用して、特定のモジュールから型を取得できます。A type can be retrieved from a specific module using Module.GetType. マニフェストを含むモジュールで Module.GetType を呼び出すと、アセンブリ全体が検索されません。Calling Module.GetType on the module that contains the manifest will not search the entire assembly. アセンブリに含まれるモジュールに関係なく、アセンブリから型を取得するには、Assembly.GetType を呼び出す必要があります。To retrieve a type from an assembly, regardless of which module it is in, you must call Assembly.GetType.

GetType(String, Boolean, Boolean)

大文字小文字を区別したモジュール検索を実行するかどうか、および型が見つからない場合に例外をスローするかどうかを指定して、指定された型を返します。Returns the specified type, specifying whether to make a case-sensitive search of the module and whether to throw an exception if the type cannot be found.

public:
 virtual Type ^ GetType(System::String ^ className, bool throwOnError, bool ignoreCase);
[System.Runtime.InteropServices.ComVisible(true)]
public virtual Type GetType (string className, bool throwOnError, bool ignoreCase);
override this.GetType : string * bool * bool -> Type
Public Overridable Function GetType (className As String, throwOnError As Boolean, ignoreCase As Boolean) As Type

パラメーター

className
String

検索対象の型の名前。The name of the type to locate. この名前は、名前空間を含む完全修飾名であることが必要です。The name must be fully qualified with the namespace.

throwOnError
Boolean

型が見つからなかったときに例外をスローする場合は truefalse を返す場合は nulltrue to throw an exception if the type cannot be found; false to return null.

ignoreCase
Boolean

大文字小文字を区別しない検索を行う場合は true。それ以外の場合は falsetrue for case-insensitive search; otherwise, false.

戻り値

型がこのモジュールで宣言されている場合は、指定された型を表す Type オブジェクト。それ以外の場合は nullA Type object representing the specified type, if the type is declared in this module; otherwise, null.

属性

例外

classNamenullです。className is null.

クラスの初期化子が呼び出され、例外がスローされます。The class initializers are invoked and an exception is thrown.

className は長さゼロの文字列です。className is a zero-length string.

throwOnErrortrue であり、型が見つかりません。throwOnError is true, and the type cannot be found.

className には見つからなかった依存アセンブリが必要です。className requires a dependent assembly that could not be found.

className には、見つかったものの読み込めなかった依存アセンブリが必要です。className requires a dependent assembly that was found but could not be loaded.

- または --or- 現在のアセンブリはリフレクションのみのコンテキストに読み込まれましたが、className には事前に読み込まれていない依存アセンブリが必要です。The current assembly was loaded into the reflection-only context, and className requires a dependent assembly that was not preloaded.

className には依存アセンブリが必要ですが、ファイルは有効なアセンブリではありません。className requires a dependent assembly, but the file is not a valid assembly.

または-or- className には、現在読み込まれているバージョンより新しいバージョンのランタイム用にコンパイルされた依存アセンブリが必要です。className requires a dependent assembly which was compiled for a version of the runtime later than the currently loaded version.

次の例では、指定されたモジュール内の型の名前を表示します。The following example displays the name of a type in the specified module. @No__t-0 および ignoreCase パラメーターは false として指定されます。The throwOnError and ignoreCase parameters are specified as false.

using namespace System;
using namespace System::Reflection;

namespace ReflectionModule_Examples
{
   public ref class MyMainClass{};

}

int main()
{
   array<Module^>^moduleArray;
   moduleArray = ReflectionModule_Examples::MyMainClass::typeid->Assembly->GetModules( false );
   
   //In a simple project with only one module, the module at index
   // 0 will be the module containing this class.
   Module^ myModule = moduleArray[ 0 ];
   Type^ myType;
   myType = myModule->GetType( "ReflectionModule_Examples.MyMainClass", false, false );
   Console::WriteLine( "Got type: {0}", myType );
}

using System;
using System.Reflection;

namespace ReflectionModule_Examples
{
    class MyMainClass
    {
        static void Main()
        {
            Module[] moduleArray;
            
            moduleArray = typeof(MyMainClass).Assembly.GetModules(false);
            
            //In a simple project with only one module, the module at index
            // 0 will be the module containing this class.
            Module myModule = moduleArray[0];

            Type myType;
            myType = myModule.GetType("ReflectionModule_Examples.MyMainClass", false, false);
            Console.WriteLine("Got type: {0}", myType.ToString());
        }
    }
}
Imports System.Reflection

'This code assumes that the root namespace is set to empty("").
Namespace ReflectionModule_Examples
    Class MyMainClass
        Shared Sub Main()
            Dim moduleArray() As [Module]

            moduleArray = GetType(MyMainClass).Assembly.GetModules(False)

            'In a simple project with only one module, the module at index
            ' 0 will be the module containing this class.
            Dim myModule As [Module] = moduleArray(0)

            Dim myType As Type
            myType = myModule.GetType("ReflectionModule_Examples.MyMainClass", False, False)
            Console.WriteLine("Got type: {0}", myType.ToString())
        End Sub
    End Class
End Namespace 'ReflectionModule_Examples

注釈

@No__t-0 パラメーターは、型が見つからない場合にのみ影響を及ぼします。The throwOnError parameter affects only what happens when the type is not found. スローされる可能性のある他の例外には影響しません。It does not affect any other exceptions that might be thrown. 特に、型が見つかっても読み込むことができない場合、throwOnErrorfalse の場合でも、TypeLoadException がスローされる可能性があります。In particular, if the type is found but cannot be loaded, TypeLoadException can be thrown even if throwOnError is false.

注意

型が別のアセンブリに転送されている場合でも、このメソッドによって返されます。If the type has been forwarded to another assembly, it is still returned by this method. 型の転送の詳細については、「共通言語ランタイムでの型の転送」を参照してください。For information on type forwarding, see Type Forwarding in the Common Language Runtime.

@No__t-0 を使用して、特定のモジュールから型を取得できます。A type can be retrieved from a specific module using Module.GetType. マニフェストを含むモジュールで Module.GetType を呼び出すと、アセンブリ全体が検索されません。Calling Module.GetType on the module that contains the manifest will not search the entire assembly. アセンブリに含まれるモジュールに関係なく、アセンブリから型を取得するには、Assembly.GetType を呼び出す必要があります。To retrieve a type from an assembly, regardless of which module it is in, you must call Assembly.GetType.

適用対象