Module.GetType Méthode

Définition

Retourne le type spécifié.

Surcharges

GetType(String)

Retourne le type spécifié en exécutant une recherche qui respecte la casse.

GetType(String, Boolean)

Retourne le type spécifié, en parcourant le module avec la casse spécifiée.

GetType(String, Boolean, Boolean)

Retourne le type spécifié, en spécifiant s'il faut faire une recherche du module respectant la casse et s'il faut lever une exception si le type est introuvable.

GetType(String)

Retourne le type spécifié en exécutant une recherche qui respecte la casse.

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

Paramètres

className
String

Le nom du type à localiser. Le nom doit être complet avec l’espace de noms.

Retours

Type

Objet Type représentant le type donné, si le type est dans ce module ; sinon, null.

Attributs

Exceptions

className a la valeur null.

Les initialiseurs de classe sont appelés et une exception est levée.

className est une chaîne de longueur nulle.

className requiert un assembly dépendant qui est introuvable.

className nécessite un assembly dépendant qui a été trouvé, mais qui n’a pas pu être chargé.

  • ou - L’assembly actuel a été chargé dans le contexte ReflectionOnly, et className nécessite un assembly dépendant qui n’a pas été préchargé.

className nécessite un assembly dépendant, mais le fichier n’est pas un assembly valide.

  • ou - className nécessite un assembly dépendant qui a été compilé pour une version du runtime ultérieure à la version actuellement chargée.

Exemples

L’exemple suivant affiche le nom d’un type dans le module spécifié.

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

Remarques

Notes

Si le type a été transféré à un autre assembly, il est toujours retourné par cette méthode. Pour plus d’informations sur le transfert de type, consultez transfert de type dans le Common Language Runtime.

Un type peut être récupéré à partir d’un module spécifique à l’aide de Module.GetType . L’appel Module.GetType de sur le module qui contient le manifeste n’effectue pas de recherche dans l’intégralité de l’assembly. Pour récupérer un type d’un assembly, quel que soit le module dans lequel il se trouve, vous devez appeler Assembly.GetType .

S’applique à

GetType(String, Boolean)

Retourne le type spécifié, en parcourant le module avec la casse spécifiée.

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

Paramètres

className
String

Le nom du type à localiser. Le nom doit être complet avec l’espace de noms.

ignoreCase
Boolean

true pour une recherche qui ne respecte pas la casse ; sinon, false.

Retours

Type

Objet Type représentant le type donné, si le type est dans ce module ; sinon, null.

Attributs

Exceptions

className a la valeur null.

Les initialiseurs de classe sont appelés et une exception est levée.

className est une chaîne de longueur nulle.

className requiert un assembly dépendant qui est introuvable.

className nécessite un assembly dépendant qui a été trouvé, mais qui n’a pas pu être chargé.

  • ou - L’assembly actuel a été chargé dans le contexte ReflectionOnly, et className nécessite un assembly dépendant qui n’a pas été préchargé.

className nécessite un assembly dépendant, mais le fichier n’est pas un assembly valide.

  • ou - className nécessite un assembly dépendant qui a été compilé pour une version du runtime ultérieure à la version actuellement chargée.

Exemples

L’exemple suivant affiche le nom d’un type dans le module spécifié, en spécifiant false pour le ignoreCase paramètre afin que la casse ne soit pas ignorée.

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

Remarques

Notes

Si le type a été transféré à un autre assembly, il est toujours retourné par cette méthode. Pour plus d’informations sur le transfert de type, consultez transfert de type dans le Common Language Runtime.

Un type peut être récupéré à partir d’un module spécifique à l’aide de Module.GetType . L’appel Module.GetType de sur le module qui contient le manifeste n’effectue pas de recherche dans l’intégralité de l’assembly. Pour récupérer un type d’un assembly, quel que soit le module dans lequel il se trouve, vous devez appeler Assembly.GetType .

S’applique à

GetType(String, Boolean, Boolean)

Retourne le type spécifié, en spécifiant s'il faut faire une recherche du module respectant la casse et s'il faut lever une exception si le type est introuvable.

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

Paramètres

className
String

Le nom du type à localiser. Le nom doit être complet avec l’espace de noms.

throwOnError
Boolean

true pour lever une exception si le type est introuvable ; false pour retourner null.

ignoreCase
Boolean

true pour une recherche qui ne respecte pas la casse ; sinon, false.

Retours

Type

Objet Type représentant le type spécifié, s'il est déclaré dans ce module ; sinon, null.

Attributs

Exceptions

className a la valeur null.

Les initialiseurs de classe sont appelés et une exception est levée.

className est une chaîne de longueur nulle.

throwOnError a la valeur true et le type est introuvable.

className requiert un assembly dépendant qui est introuvable.

className nécessite un assembly dépendant qui a été trouvé, mais qui n’a pas pu être chargé.

  • ou - L’assembly actuel a été chargé dans le contexte ReflectionOnly, et className nécessite un assembly dépendant qui n’a pas été préchargé.

className nécessite un assembly dépendant, mais le fichier n’est pas un assembly valide.

  • ou - className nécessite un assembly dépendant qui a été compilé pour une version du runtime ultérieure à la version actuellement chargée.

Exemples

L’exemple suivant affiche le nom d’un type dans le module spécifié. Les throwOnError ignoreCase paramètres et sont spécifiés en tant que 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

Remarques

Le throwOnError paramètre affecte uniquement ce qui se produit lorsque le type est introuvable. Elle n’affecte pas les autres exceptions qui peuvent être levées. En particulier, si le type est trouvé mais ne peut pas être chargé, TypeLoadException peut être levé même si throwOnError est false .

Notes

Si le type a été transféré à un autre assembly, il est toujours retourné par cette méthode. Pour plus d’informations sur le transfert de type, consultez transfert de type dans le Common Language Runtime.

Un type peut être récupéré à partir d’un module spécifique à l’aide de Module.GetType . L’appel Module.GetType de sur le module qui contient le manifeste n’effectue pas de recherche dans l’intégralité de l’assembly. Pour récupérer un type d’un assembly, quel que soit le module dans lequel il se trouve, vous devez appeler Assembly.GetType .

S’applique à