ConstructorInfo Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Identifie les attributs d'un constructeur de classe et donne accès aux métadonnées du constructeur.
public ref class ConstructorInfo abstract : System::Reflection::MethodBase
public ref class ConstructorInfo abstract : System::Reflection::MethodBase, System::Runtime::InteropServices::_ConstructorInfo
public abstract class ConstructorInfo : System.Reflection.MethodBase
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Serializable]
public abstract class ConstructorInfo : System.Reflection.MethodBase, System.Runtime.InteropServices._ConstructorInfo
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class ConstructorInfo : System.Reflection.MethodBase, System.Runtime.InteropServices._ConstructorInfo
type ConstructorInfo = class
inherit MethodBase
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Serializable>]
type ConstructorInfo = class
inherit MethodBase
interface _ConstructorInfo
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type ConstructorInfo = class
inherit MethodBase
interface _ConstructorInfo
Public MustInherit Class ConstructorInfo
Inherits MethodBase
Public MustInherit Class ConstructorInfo
Inherits MethodBase
Implements _ConstructorInfo
- Héritage
- Dérivé
- Attributs
- Implémente
Exemples
L’exemple suivant utilise ConstructorInfo
avec GetConstructor et BindingFlags pour rechercher les constructeurs qui correspondent aux critères de recherche spécifiés.
using namespace System;
using namespace System::Reflection;
using namespace System::Security;
public ref class MyClass1
{
public:
MyClass1( int i ){}
};
int main()
{
try
{
Type^ myType = MyClass1::typeid;
array<Type^>^types = gcnew array<Type^>(1);
types[ 0 ] = int::typeid;
// Get the public instance constructor that takes an integer parameter.
ConstructorInfo^ constructorInfoObj = myType->GetConstructor( static_cast<BindingFlags>(BindingFlags::Instance | BindingFlags::Public), nullptr, CallingConventions::HasThis, types, nullptr );
if ( constructorInfoObj != nullptr )
{
Console::WriteLine( "The constructor of MyClass1 that is a public instance method and takes an integer as a parameter is: " );
Console::WriteLine( constructorInfoObj );
}
else
{
Console::WriteLine( "The constructor of MyClass1 that is a public instance method and takes an integer as a parameter is not available." );
}
}
catch ( ArgumentNullException^ e )
{
Console::WriteLine( "ArgumentNullException: {0}", e->Message );
}
catch ( ArgumentException^ e )
{
Console::WriteLine( "ArgumentException: {0}", e->Message );
}
catch ( SecurityException^ e )
{
Console::WriteLine( "SecurityException: {0}", e->Message );
}
catch ( Exception^ e )
{
Console::WriteLine( "Exception: {0}", e->Message );
}
}
using System;
using System.Reflection;
using System.Security;
public class MyClass3
{
public MyClass3(int i) { }
public static void Main()
{
try
{
Type myType = typeof(MyClass3);
Type[] types = new Type[1];
types[0] = typeof(int);
// Get the public instance constructor that takes an integer parameter.
ConstructorInfo constructorInfoObj = myType.GetConstructor(
BindingFlags.Instance | BindingFlags.Public, null,
CallingConventions.HasThis, types, null);
if (constructorInfoObj != null)
{
Console.WriteLine("The constructor of MyClass3 that is a public " +
"instance method and takes an integer as a parameter is: ");
Console.WriteLine(constructorInfoObj.ToString());
}
else
{
Console.WriteLine("The constructor of MyClass3 that is a public instance " +
"method and takes an integer as a parameter is not available.");
}
}
catch (ArgumentNullException e)
{
Console.WriteLine("ArgumentNullException: " + e.Message);
}
catch (ArgumentException e)
{
Console.WriteLine("ArgumentException: " + e.Message);
}
catch (SecurityException e)
{
Console.WriteLine("SecurityException: " + e.Message);
}
catch (Exception e)
{
Console.WriteLine("Exception: " + e.Message);
}
}
}
Public Class MyClass1
Public Sub New(ByVal i As Integer)
End Sub
Public Shared Sub Main()
Try
Dim myType As Type = GetType(MyClass1)
Dim types(0) As Type
types(0) = GetType(Integer)
' Get the public instance constructor that takes an integer parameter.
Dim constructorInfoObj As ConstructorInfo = _
myType.GetConstructor(BindingFlags.Instance Or _
BindingFlags.Public, Nothing, _
CallingConventions.HasThis, types, Nothing)
If Not (constructorInfoObj Is Nothing) Then
Console.WriteLine("The constructor of MyClass1 that " + _
"is a public instance method and takes an " + _
"integer as a parameter is: ")
Console.WriteLine(constructorInfoObj.ToString())
Else
Console.WriteLine("The constructor MyClass1 that " + _
"is a public instance method and takes an " + _
"integer as a parameter is not available.")
End If
Catch e As ArgumentNullException
Console.WriteLine("ArgumentNullException: " + e.Message)
Catch e As ArgumentException
Console.WriteLine("ArgumentException: " + e.Message)
Catch e As SecurityException
Console.WriteLine("SecurityException: " + e.Message)
Catch e As Exception
Console.WriteLine("Exception: " + e.Message)
End Try
End Sub
End Class
Remarques
ConstructorInfo
est utilisé pour découvrir les attributs d’un constructeur ainsi que pour appeler un constructeur. Les objets sont créés en appelant Invoke sur un ConstructorInfo
retourné par la GetConstructors méthode ou GetConstructor d’un Type objet .
Notes
ConstructorInfo hérite de MethodBase plusieurs membres, tels que IsGenericMethod, qui peuvent être utilisés pour examiner les méthodes génériques. Dans le .NET Framework version 2.0, les constructeurs ne peuvent pas être génériques, de sorte que ces membres retournent false
ou null
.
Notes pour les responsables de l’implémentation
Lorsque vous héritez de ConstructorInfo
, vous devez remplacer la surcharge de membre suivante : Invoke(BindingFlags, Binder, Object[], CultureInfo).
Constructeurs
ConstructorInfo() |
Initialise une nouvelle instance de la classe ConstructorInfo. |
Champs
ConstructorName |
Représente le nom de la méthode de constructeur de classe tel qu'il est stocké dans les métadonnées. Ce nom est toujours ".ctor". Ce champ est en lecture seule. |
TypeConstructorName |
Représente le nom de la méthode de constructeur de type tel qu'il est stocké dans les métadonnées. Ce nom est toujours ".cctor". Cette propriété est en lecture seule. |
Propriétés
Attributes |
Obtient les attributs associés à cette méthode. (Hérité de MethodBase) |
CallingConvention |
Obtient une valeur indiquant les conventions d'appel de cette méthode. (Hérité de MethodBase) |
ContainsGenericParameters |
Obtient une valeur indiquant si la méthode générique contient des paramètres de type générique non assignés. (Hérité de MethodBase) |
CustomAttributes |
Obtient une collection qui contient les attributs personnalisés de ce membre. (Hérité de MemberInfo) |
DeclaringType |
Obtient la classe qui déclare ce membre. (Hérité de MemberInfo) |
IsAbstract |
Obtient une valeur indiquant si la méthode est abstraite. (Hérité de MethodBase) |
IsAssembly |
Obtient une valeur indiquant si la visibilité potentielle de cette méthode ou de ce constructeur est décrite par Assembly, c'est-à-dire si la méthode ou le constructeur est visible au maximum par d'autres types du même assembly, et n'est pas visible par des types dérivés à l'extérieur de l'assembly. (Hérité de MethodBase) |
IsCollectible |
Obtient une valeur qui indique si cet objet MemberInfo fait partie d’un assembly contenu dans un AssemblyLoadContext pouvant être collecté. (Hérité de MemberInfo) |
IsConstructedGenericMethod |
Identifie les attributs d'un constructeur de classe et donne accès aux métadonnées du constructeur. (Hérité de MethodBase) |
IsConstructor |
Obtient une valeur indiquant si la méthode est un constructeur. (Hérité de MethodBase) |
IsFamily |
Obtient une valeur indiquant si la visibilité de cette méthode ou de ce constructeur est décrite par Family, c'est-à-dire si la méthode ou le constructeur est visible uniquement dans sa classe et dans ses classes dérivées. (Hérité de MethodBase) |
IsFamilyAndAssembly |
Obtient une valeur indiquant si la visibilité de cette méthode ou de ce constructeur est décrite par FamANDAssem, c'est-à-dire si la méthode ou le constructeur peut être appelé par des classes dérivées, mais uniquement si elles se trouvent dans le même assembly. (Hérité de MethodBase) |
IsFamilyOrAssembly |
Obtient une valeur indiquant si la visibilité potentielle de cette méthode ou de ce constructeur est décrite par FamORAssem, c'est-à-dire si la méthode ou le constructeur peut être appelé par des classes dérivées où qu'elles se trouvent, et par des classes du même assembly. (Hérité de MethodBase) |
IsFinal |
Obtient une valeur indiquant si cette méthode est |
IsGenericMethod |
Obtient une valeur indiquant si la méthode est générique. (Hérité de MethodBase) |
IsGenericMethodDefinition |
Obtient une valeur indiquant si la méthode est une définition de méthode générique. (Hérité de MethodBase) |
IsHideBySig |
Obtient une valeur indiquant si seul un membre du même type, doté d'une signature identique, est caché dans la classe dérivée. (Hérité de MethodBase) |
IsPrivate |
Obtient une valeur indiquant si ce membre est privé. (Hérité de MethodBase) |
IsPublic |
Obtient une valeur indiquant s'il s'agit d'une méthode publique. (Hérité de MethodBase) |
IsSecurityCritical |
Obtient une valeur qui indique si la méthode ou le constructeur actuel est critique de sécurité (security-critical) ou critique sécurisé (security-safe-critical) au niveau de confiance actuel et peut par conséquent exécuter des opérations critiques. (Hérité de MethodBase) |
IsSecuritySafeCritical |
Obtient une valeur qui indique si la méthode ou le constructeur actuel est critique sécurisé au niveau de confiance actuel ; autrement dit, si la méthode ou le constructeur peut exécuter des opérations critiques et être accessible par du code transparent. (Hérité de MethodBase) |
IsSecurityTransparent |
Obtient une valeur qui indique si la méthode ou le constructeur actuel est transparent au niveau de confiance actuel et ne peut par conséquent pas exécuter d'opérations critiques. (Hérité de MethodBase) |
IsSpecialName |
Obtient une valeur indiquant si cette méthode est dotée d'un nom spécial. (Hérité de MethodBase) |
IsStatic |
Obtient une valeur indiquant si la méthode est |
IsVirtual |
Obtient une valeur indiquant si la méthode est |
MemberType |
Récupère une valeur MemberTypes indiquant que ce membre est un constructeur. |
MemberType |
En cas de substitution dans une classe dérivée, récupère une valeur MemberTypes indiquant le type du membre (méthode, constructeur, événement, etc.). (Hérité de MemberInfo) |
MetadataToken |
Obtient une valeur qui identifie un élément de métadonnées. (Hérité de MemberInfo) |
MethodHandle |
Obtient un handle vers la représentation interne des métadonnées d'une méthode. (Hérité de MethodBase) |
MethodImplementationFlags |
Obtient les indicateurs MethodImplAttributes qui spécifient les attributs de l'implémentation d'une méthode. (Hérité de MethodBase) |
Module |
Obtient le module dans lequel le type qui déclare le membre représenté par le MemberInfo actuel est défini. (Hérité de MemberInfo) |
Name |
Obtient le nom du membre actuel. (Hérité de MemberInfo) |
ReflectedType |
Obtient l'objet classe utilisé pour obtenir cette instance de |
Méthodes
Equals(Object) |
Retourne une valeur qui indique si cette instance est égale à un objet spécifié. |
Equals(Object) |
Retourne une valeur qui indique si cette instance est égale à un objet spécifié. (Hérité de MethodBase) |
GetCustomAttributes(Boolean) |
En cas de substitution dans une classe dérivée, retourne un tableau de tous les attributs personnalisés appliqués à ce membre. (Hérité de MemberInfo) |
GetCustomAttributes(Type, Boolean) |
En cas de substitution dans une classe dérivée, retourne un tableau d’attributs personnalisés appliqués à ce membre et identifiés par Type. (Hérité de MemberInfo) |
GetCustomAttributesData() |
Renvoie une liste d’objets CustomAttributeData représentant des données sur les attributs qui ont été appliqués au membre cible. (Hérité de MemberInfo) |
GetGenericArguments() |
Retourne un tableau d'objets Type qui représentent les arguments de type d'une méthode générique ou les paramètres de type d'une définition de méthode générique. (Hérité de MethodBase) |
GetHashCode() |
Retourne le code de hachage de cette instance. |
GetHashCode() |
Retourne le code de hachage de cette instance. (Hérité de MethodBase) |
GetMethodBody() |
En cas de substitution dans une classe dérivée, obtient un objet MethodBody qui donne accès au flux MSIL, aux variables locales et aux exceptions pour la méthode actuelle. (Hérité de MethodBase) |
GetMethodImplementationFlags() |
Lors du remplacement dans une classe dérivée, retourne les indicateurs MethodImplAttributes. (Hérité de MethodBase) |
GetParameters() |
En cas de substitution dans une classe dérivée, obtient les paramètres de la méthode ou du constructeur spécifié. (Hérité de MethodBase) |
GetType() |
Identifie les attributs d'un constructeur de classe et donne accès aux métadonnées du constructeur. |
GetType() |
Identifie les attributs d'un constructeur de classe et donne accès aux métadonnées du constructeur. (Hérité de MethodBase) |
HasSameMetadataDefinitionAs(MemberInfo) |
Identifie les attributs d'un constructeur de classe et donne accès aux métadonnées du constructeur. (Hérité de MemberInfo) |
Invoke(BindingFlags, Binder, Object[], CultureInfo) |
En cas d'implémentation dans une classe dérivée, appelle le constructeur réfléchi par ce |
Invoke(Object, BindingFlags, Binder, Object[], CultureInfo) |
En cas de substitution dans une classe dérivée, appelle la méthode ou le constructeur réfléchi avec les paramètres donnés. (Hérité de MethodBase) |
Invoke(Object, Object[]) |
Appelle la méthode ou le constructeur représenté par l’instance actuelle, selon les paramètres spécifiés. (Hérité de MethodBase) |
Invoke(Object[]) |
Appelle le constructeur réfléchi par l’instance qui dispose des paramètres spécifiés, en fournissant des valeurs par défaut pour les paramètres rarement utilisés. |
IsDefined(Type, Boolean) |
En cas de substitution dans une classe dérivée, indique si un ou plusieurs attributs du type spécifié ou de ses types dérivés sont appliqués à ce membre. (Hérité de MemberInfo) |
MemberwiseClone() |
Crée une copie superficielle du Object actuel. (Hérité de Object) |
ToString() |
Retourne une chaîne qui représente l'objet actuel. (Hérité de Object) |
Opérateurs
Equality(ConstructorInfo, ConstructorInfo) |
Indique si deux objets ConstructorInfo sont égaux. |
Inequality(ConstructorInfo, ConstructorInfo) |
Indique si deux objets ConstructorInfo ne sont pas égaux. |
Implémentations d’interfaces explicites
_ConstructorInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mappe un jeu de noms avec un jeu correspondant d'identificateurs de dispatch. |
_ConstructorInfo.GetType() |
Obtient un objet Type qui représente le type ConstructorInfo. |
_ConstructorInfo.GetTypeInfo(UInt32, UInt32, IntPtr) |
Récupère les informations de type pour un objet, qui peuvent être utilisées ensuite pour obtenir les informations de type d'une interface. |
_ConstructorInfo.GetTypeInfoCount(UInt32) |
Récupère le nombre d'interfaces d'informations de type fourni par un objet (0 ou 1). |
_ConstructorInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Fournit l'accès aux propriétés et aux méthodes exposées par un objet. |
_ConstructorInfo.Invoke_2(Object, BindingFlags, Binder, Object[], CultureInfo) |
Fournit des objets COM avec un accès indépendant de la version à la méthode Invoke(Object, BindingFlags, Binder, Object[], CultureInfo). |
_ConstructorInfo.Invoke_3(Object, Object[]) |
Fournit des objets COM avec un accès indépendant de la version à la méthode Invoke(Object, Object[]). |
_ConstructorInfo.Invoke_4(BindingFlags, Binder, Object[], CultureInfo) |
Fournit des objets COM avec un accès indépendant de la version à la méthode Invoke(BindingFlags, Binder, Object[], CultureInfo). |
_ConstructorInfo.Invoke_5(Object[]) |
Fournit des objets COM avec un accès indépendant de la version à la méthode Invoke(Object[]). |
_MemberInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mappe un jeu de noms avec un jeu correspondant d'identificateurs de dispatch. (Hérité de MemberInfo) |
_MemberInfo.GetType() |
Obtient un objet Type représentant la classe MemberInfo. (Hérité de MemberInfo) |
_MemberInfo.GetTypeInfo(UInt32, UInt32, IntPtr) |
Récupère les informations de type pour un objet, qui peuvent être utilisées ensuite pour obtenir les informations de type d'une interface. (Hérité de MemberInfo) |
_MemberInfo.GetTypeInfoCount(UInt32) |
Récupère le nombre d'interfaces d'informations de type fourni par un objet (0 ou 1). (Hérité de MemberInfo) |
_MemberInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Fournit l'accès aux propriétés et aux méthodes exposées par un objet. (Hérité de MemberInfo) |
_MethodBase.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Mappe un jeu de noms avec un jeu correspondant d'identificateurs de dispatch. (Hérité de MethodBase) |
_MethodBase.GetType() |
Pour obtenir une description de ce membre, consultez GetType(). (Hérité de MethodBase) |
_MethodBase.GetTypeInfo(UInt32, UInt32, IntPtr) |
Récupère les informations de type pour un objet, qui peuvent être utilisées ensuite pour obtenir les informations de type d'une interface. (Hérité de MethodBase) |
_MethodBase.GetTypeInfoCount(UInt32) |
Récupère le nombre d'interfaces d'informations de type fourni par un objet (0 ou 1). (Hérité de MethodBase) |
_MethodBase.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Fournit l'accès aux propriétés et aux méthodes exposées par un objet. (Hérité de MethodBase) |
_MethodBase.IsAbstract |
Pour obtenir une description de ce membre, consultez IsAbstract. (Hérité de MethodBase) |
_MethodBase.IsAssembly |
Pour obtenir une description de ce membre, consultez IsAssembly. (Hérité de MethodBase) |
_MethodBase.IsConstructor |
Pour obtenir une description de ce membre, consultez IsConstructor. (Hérité de MethodBase) |
_MethodBase.IsFamily |
Pour obtenir une description de ce membre, consultez IsFamily. (Hérité de MethodBase) |
_MethodBase.IsFamilyAndAssembly |
Pour obtenir une description de ce membre, consultez IsFamilyAndAssembly. (Hérité de MethodBase) |
_MethodBase.IsFamilyOrAssembly |
Pour obtenir une description de ce membre, consultez IsFamilyOrAssembly. (Hérité de MethodBase) |
_MethodBase.IsFinal |
Pour obtenir une description de ce membre, consultez IsFinal. (Hérité de MethodBase) |
_MethodBase.IsHideBySig |
Pour obtenir une description de ce membre, consultez IsHideBySig. (Hérité de MethodBase) |
_MethodBase.IsPrivate |
Pour obtenir une description de ce membre, consultez IsPrivate. (Hérité de MethodBase) |
_MethodBase.IsPublic |
Pour obtenir une description de ce membre, consultez IsPublic. (Hérité de MethodBase) |
_MethodBase.IsSpecialName |
Pour obtenir une description de ce membre, consultez IsSpecialName. (Hérité de MethodBase) |
_MethodBase.IsStatic |
Pour obtenir une description de ce membre, consultez IsStatic. (Hérité de MethodBase) |
_MethodBase.IsVirtual |
Pour obtenir une description de ce membre, consultez IsVirtual. (Hérité de MethodBase) |
ICustomAttributeProvider.GetCustomAttributes(Boolean) |
Retourne un tableau de tous les attributs personnalisés définis sur ce membre, en dehors des attributs nommés, ou un tableau vide s’il n’y a aucun attribut personnalisé. (Hérité de MemberInfo) |
ICustomAttributeProvider.GetCustomAttributes(Type, Boolean) |
Retourne un tableau d’attributs personnalisés définis sur ce membre, identifiés par type, ou un tableau vide s’il n’y a aucun attribut personnalisé de ce type. (Hérité de MemberInfo) |
ICustomAttributeProvider.IsDefined(Type, Boolean) |
Indique si une ou plusieurs instances de |
Méthodes d’extension
GetCustomAttribute(MemberInfo, Type) |
Récupère un attribut personnalisé d'un type spécifié qui est appliqué à un membre spécifié. |
GetCustomAttribute(MemberInfo, Type, Boolean) |
Récupère un attribut personnalisé d'un type spécifié qui est appliqué à un membre spécifié, et inspecte éventuellement les ancêtres de ce membre. |
GetCustomAttribute<T>(MemberInfo) |
Récupère un attribut personnalisé d'un type spécifié qui est appliqué à un membre spécifié. |
GetCustomAttribute<T>(MemberInfo, Boolean) |
Récupère un attribut personnalisé d'un type spécifié qui est appliqué à un membre spécifié, et inspecte éventuellement les ancêtres de ce membre. |
GetCustomAttributes(MemberInfo) |
Récupère une collection d'attributs personnalisés qui sont appliqués à un membre spécifié. |
GetCustomAttributes(MemberInfo, Boolean) |
Récupère une collection d'attributs personnalisés qui sont appliqués à un membre spécifié, et inspecte éventuellement les ancêtres de ce membre. |
GetCustomAttributes(MemberInfo, Type) |
Extrait une collection d'attributs personnalisés d'un type spécifié qui sont appliqués à un membre spécifié. |
GetCustomAttributes(MemberInfo, Type, Boolean) |
Extrait une collection d'attributs personnalisés d'un type spécifié qui sont appliqués à un membre spécifié, et inspecte éventuellement les ancêtres de ce membre. |
GetCustomAttributes<T>(MemberInfo) |
Extrait une collection d'attributs personnalisés d'un type spécifié qui sont appliqués à un membre spécifié. |
GetCustomAttributes<T>(MemberInfo, Boolean) |
Extrait une collection d'attributs personnalisés d'un type spécifié qui sont appliqués à un membre spécifié, et inspecte éventuellement les ancêtres de ce membre. |
IsDefined(MemberInfo, Type) |
Indique si des attributs personnalisés d'un type spécifié sont appliqués à un membre spécifié. |
IsDefined(MemberInfo, Type, Boolean) |
Indique si les attributs personnalisés d'un type spécifié sont appliqués à un membre spécifié, et, éventuellement, appliqués à ses ancêtres. |
GetMetadataToken(MemberInfo) |
Obtient un jeton de métadonnées pour le membre donné, s’il est disponible. |
HasMetadataToken(MemberInfo) |
Retourne une valeur qui indique si un jeton de métadonnées est disponible pour le membre spécifié. |
S’applique à
Cohérence de thread
Ce type est thread-safe.