ConstructorInfo Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Detecta los atributos de un constructor de clase y proporciona acceso a los metadatos del constructor.
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
- Herencia
- Derivado
- Atributos
- Implementaciones
Ejemplos
En el ejemplo siguiente se usa ConstructorInfo con GetConstructor y BindingFlags para buscar los constructores que coinciden con los criterios de búsqueda especificados.
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
Comentarios
ConstructorInfo se usa para detectar los atributos de un constructor, así como para invocar un constructor. Los objetos se crean llamando a Invoke en un ConstructorInfo devuelto por el GetConstructors método o GetConstructor de un Type objeto .
Note
ConstructorInfo hereda de MethodBase varios miembros, como IsGenericMethod, que se puede usar para examinar métodos genéricos. En los constructores de .NET Framework versión 2.0 no pueden ser genéricos, por lo que estos miembros devuelven false o null.
Notas a los implementadores
Al heredar de ConstructorInfo, debe invalidar la siguiente sobrecarga de miembro: Invoke(BindingFlags, Binder, Object[], CultureInfo).
Constructores
| Nombre | Description |
|---|---|
| ConstructorInfo() |
Inicializa una nueva instancia de la clase ConstructorInfo. |
Campos
| Nombre | Description |
|---|---|
| ConstructorName |
Representa el nombre del método constructor de clase tal como se almacena en los metadatos. Este nombre siempre es ".ctor". Este campo es de sólo lectura. |
| TypeConstructorName |
Representa el nombre del método constructor de tipo tal como se almacena en los metadatos. Este nombre siempre es ".cctor". Esta propiedad es de solo lectura. |
Propiedades
| Nombre | Description |
|---|---|
| Attributes |
Obtiene los atributos asociados a este método. (Heredado de MethodBase) |
| CallingConvention |
Obtiene un valor que indica las convenciones de llamada para este método. (Heredado de MethodBase) |
| ContainsGenericParameters |
Obtiene un valor que indica si el método genérico contiene parámetros de tipo genérico sin asignar. (Heredado de MethodBase) |
| CustomAttributes |
Obtiene una colección que contiene los atributos personalizados de este miembro. (Heredado de MemberInfo) |
| DeclaringType |
Obtiene la clase que declara este miembro. (Heredado de MemberInfo) |
| IsAbstract |
Obtiene un valor que indica si el método es abstracto. (Heredado de MethodBase) |
| IsAssembly |
Obtiene un valor que indica si la posible visibilidad de este método o constructor se describe mediante Assembly; es decir, el método o constructor es visible como máximo para otros tipos del mismo ensamblado y no es visible para los tipos derivados fuera del ensamblado. (Heredado de MethodBase) |
| IsConstructedGenericMethod |
Detecta los atributos de un constructor de clase y proporciona acceso a los metadatos del constructor. (Heredado de MethodBase) |
| IsConstructor |
Obtiene un valor que indica si el método es un constructor. (Heredado de MethodBase) |
| IsFamily |
Obtiene un valor que indica si la visibilidad de este método o constructor se describe mediante Family; es decir, el método o constructor solo está visible dentro de su clase y clases derivadas. (Heredado de MethodBase) |
| IsFamilyAndAssembly |
Obtiene un valor que indica si la visibilidad de este método o constructor se describe mediante FamANDAssem; es decir, las clases derivadas pueden llamar al método o constructor, pero solo si están en el mismo ensamblado. (Heredado de MethodBase) |
| IsFamilyOrAssembly |
Obtiene un valor que indica si la posible visibilidad de este método o constructor se describe mediante FamORAssem; es decir, las clases derivadas pueden llamar al método o constructor dondequiera que estén y por clases del mismo ensamblado. (Heredado de MethodBase) |
| IsFinal |
Obtiene un valor que indica si este método es |
| IsGenericMethod |
Obtiene un valor que indica si el método es genérico. (Heredado de MethodBase) |
| IsGenericMethodDefinition |
Obtiene un valor que indica si el método es una definición de método genérico. (Heredado de MethodBase) |
| IsHideBySig |
Obtiene un valor que indica si solo un miembro del mismo tipo con exactamente la misma firma está oculto en la clase derivada. (Heredado de MethodBase) |
| IsPrivate |
Obtiene un valor que indica si este miembro es privado. (Heredado de MethodBase) |
| IsPublic |
Obtiene un valor que indica si se trata de un método público. (Heredado de MethodBase) |
| IsSecurityCritical |
Obtiene un valor que indica si el método o constructor actual es crítico para la seguridad o crítico para la seguridad en el nivel de confianza actual y, por tanto, puede realizar operaciones críticas. (Heredado de MethodBase) |
| IsSecuritySafeCritical |
Obtiene un valor que indica si el método o constructor actual es crítico para la seguridad en el nivel de confianza actual; es decir, si puede realizar operaciones críticas y se puede acceder a ellas mediante código transparente. (Heredado de MethodBase) |
| IsSecurityTransparent |
Obtiene un valor que indica si el método o constructor actual es transparente en el nivel de confianza actual y, por tanto, no puede realizar operaciones críticas. (Heredado de MethodBase) |
| IsSpecialName |
Obtiene un valor que indica si este método tiene un nombre especial. (Heredado de MethodBase) |
| IsStatic |
Obtiene un valor que indica si el método es |
| IsVirtual |
Obtiene un valor que indica si el método es |
| MemberType |
Obtiene un MemberTypes valor que indica que este miembro es un constructor. |
| MetadataToken |
Obtiene un valor que identifica un elemento de metadatos. (Heredado de MemberInfo) |
| MethodHandle |
Obtiene un identificador de la representación de metadatos interna de un método. (Heredado de MethodBase) |
| MethodImplementationFlags |
Obtiene las MethodImplAttributes marcas que especifican los atributos de una implementación de método. (Heredado de MethodBase) |
| Module |
Obtiene el módulo en el que se define el tipo que declara el miembro representado por el actual MemberInfo . (Heredado de MemberInfo) |
| Name |
Obtiene el nombre del miembro actual. (Heredado de MemberInfo) |
| ReflectedType |
Obtiene el objeto de clase que se usó para obtener esta instancia de |
Métodos
| Nombre | Description |
|---|---|
| Equals(Object) |
Devuelve un valor que indica si esta instancia es igual a un objeto especificado. |
| GetCustomAttributes(Boolean) |
Cuando se reemplaza en una clase derivada, devuelve una matriz de todos los atributos personalizados aplicados a este miembro. (Heredado de MemberInfo) |
| GetCustomAttributes(Type, Boolean) |
Cuando se reemplaza en una clase derivada, devuelve una matriz de atributos personalizados aplicados a este miembro y identificados por Type. (Heredado de MemberInfo) |
| GetCustomAttributesData() |
Devuelve una lista de CustomAttributeData objetos que representan datos sobre los atributos que se han aplicado al miembro de destino. (Heredado de MemberInfo) |
| GetGenericArguments() |
Devuelve una matriz de Type objetos que representan los argumentos de tipo de un método genérico o los parámetros de tipo de una definición de método genérico. (Heredado de MethodBase) |
| GetHashCode() |
Devuelve el código hash de esta instancia. |
| GetMethodBody() |
Cuando se reemplaza en una clase derivada, obtiene un MethodBody objeto que proporciona acceso a la secuencia de MSIL, las variables locales y las excepciones para el método actual. (Heredado de MethodBase) |
| GetMethodImplementationFlags() |
Cuando se invalida en una clase derivada, devuelve las MethodImplAttributes marcas . (Heredado de MethodBase) |
| GetParameters() |
Cuando se reemplaza en una clase derivada, obtiene los parámetros del método o constructor especificados. (Heredado de MethodBase) |
| GetType() |
Detecta los atributos de un constructor de clase y proporciona acceso a los metadatos del constructor. |
| HasSameMetadataDefinitionAs(MemberInfo) |
Detecta los atributos de un constructor de clase y proporciona acceso a los metadatos del constructor. (Heredado de MemberInfo) |
| Invoke(BindingFlags, Binder, Object[], CultureInfo) |
Cuando se implementa en una clase derivada, invoca al constructor reflejado por este |
| Invoke(Object, BindingFlags, Binder, Object[], CultureInfo) |
Cuando se invalida en una clase derivada, invoca el método o constructor reflejados con los parámetros especificados. (Heredado de MethodBase) |
| Invoke(Object, Object[]) |
Invoca el método o constructor representado por la instancia actual mediante los parámetros especificados. (Heredado de MethodBase) |
| Invoke(Object[]) |
Invoca el constructor reflejado por la instancia de que tiene los parámetros especificados, proporcionando valores predeterminados para los parámetros que no se usan normalmente. |
| IsDefined(Type, Boolean) |
Cuando se reemplaza en una clase derivada, indica si uno o varios atributos del tipo especificado o de sus tipos derivados se aplican a este miembro. (Heredado de MemberInfo) |
| MemberwiseClone() |
Crea una copia superficial del Objectactual. (Heredado de Object) |
| ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |
Operadores
| Nombre | Description |
|---|---|
| Equality(ConstructorInfo, ConstructorInfo) |
Indica si dos ConstructorInfo objetos son iguales. |
| Inequality(ConstructorInfo, ConstructorInfo) |
Indica si dos ConstructorInfo objetos no son iguales. |
Implementaciones de interfaz explícitas
| Nombre | Description |
|---|---|
| _ConstructorInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío. |
| _ConstructorInfo.GetType() |
Obtiene un Type objeto que representa el ConstructorInfo tipo. |
| _ConstructorInfo.GetTypeInfo(UInt32, UInt32, IntPtr) |
Recupera la información de tipo de un objeto, que se puede usar después para obtener la información de tipo de una interfaz. |
| _ConstructorInfo.GetTypeInfoCount(UInt32) |
Recupera el número de interfaces de información de tipo que proporciona un objeto (0 ó 1). |
| _ConstructorInfo.Invoke_2(Object, BindingFlags, Binder, Object[], CultureInfo) |
Proporciona objetos COM con acceso independiente de la versión al Invoke(Object, BindingFlags, Binder, Object[], CultureInfo) método . |
| _ConstructorInfo.Invoke_3(Object, Object[]) |
Proporciona objetos COM con acceso independiente de la versión al Invoke(Object, Object[]) método . |
| _ConstructorInfo.Invoke_4(BindingFlags, Binder, Object[], CultureInfo) |
Proporciona objetos COM con acceso independiente de la versión al Invoke(BindingFlags, Binder, Object[], CultureInfo) método . |
| _ConstructorInfo.Invoke_5(Object[]) |
Proporciona objetos COM con acceso independiente de la versión al Invoke(Object[]) método . |
| _ConstructorInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Proporciona acceso a propiedades y métodos expuestos por un objeto . |
| _MemberInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío. (Heredado de MemberInfo) |
| _MemberInfo.GetType() |
Obtiene un Type objeto que representa la MemberInfo clase . (Heredado de MemberInfo) |
| _MemberInfo.GetTypeInfo(UInt32, UInt32, IntPtr) |
Recupera la información de tipo de un objeto, que se puede usar después para obtener la información de tipo de una interfaz. (Heredado de MemberInfo) |
| _MemberInfo.GetTypeInfoCount(UInt32) |
Recupera el número de interfaces de información de tipo que proporciona un objeto (0 ó 1). (Heredado de MemberInfo) |
| _MemberInfo.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Proporciona acceso a propiedades y métodos expuestos por un objeto . (Heredado de MemberInfo) |
| _MethodBase.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío. (Heredado de MethodBase) |
| _MethodBase.GetType() |
Para obtener una descripción de este miembro, vea GetType(). (Heredado de MethodBase) |
| _MethodBase.GetTypeInfo(UInt32, UInt32, IntPtr) |
Recupera la información de tipo de un objeto, que se puede usar después para obtener la información de tipo de una interfaz. (Heredado de MethodBase) |
| _MethodBase.GetTypeInfoCount(UInt32) |
Recupera el número de interfaces de información de tipo que proporciona un objeto (0 ó 1). (Heredado de MethodBase) |
| _MethodBase.Invoke(UInt32, Guid, UInt32, Int16, IntPtr, IntPtr, IntPtr, IntPtr) |
Proporciona acceso a propiedades y métodos expuestos por un objeto . (Heredado de MethodBase) |
| _MethodBase.IsAbstract |
Para obtener una descripción de este miembro, vea IsAbstract. (Heredado de MethodBase) |
| _MethodBase.IsAssembly |
Para obtener una descripción de este miembro, vea IsAssembly. (Heredado de MethodBase) |
| _MethodBase.IsConstructor |
Para obtener una descripción de este miembro, vea IsConstructor. (Heredado de MethodBase) |
| _MethodBase.IsFamily |
Para obtener una descripción de este miembro, vea IsFamily. (Heredado de MethodBase) |
| _MethodBase.IsFamilyAndAssembly |
Para obtener una descripción de este miembro, vea IsFamilyAndAssembly. (Heredado de MethodBase) |
| _MethodBase.IsFamilyOrAssembly |
Para obtener una descripción de este miembro, vea IsFamilyOrAssembly. (Heredado de MethodBase) |
| _MethodBase.IsFinal |
Para obtener una descripción de este miembro, vea IsFinal. (Heredado de MethodBase) |
| _MethodBase.IsHideBySig |
Para obtener una descripción de este miembro, vea IsHideBySig. (Heredado de MethodBase) |
| _MethodBase.IsPrivate |
Para obtener una descripción de este miembro, vea IsPrivate. (Heredado de MethodBase) |
| _MethodBase.IsPublic |
Para obtener una descripción de este miembro, vea IsPublic. (Heredado de MethodBase) |
| _MethodBase.IsSpecialName |
Para obtener una descripción de este miembro, vea IsSpecialName. (Heredado de MethodBase) |
| _MethodBase.IsStatic |
Para obtener una descripción de este miembro, vea IsStatic. (Heredado de MethodBase) |
| _MethodBase.IsVirtual |
Para obtener una descripción de este miembro, vea IsVirtual. (Heredado de MethodBase) |
| ICustomAttributeProvider.GetCustomAttributes(Boolean) |
Devuelve una matriz de todos los atributos personalizados definidos en este miembro, excepto los atributos con nombre o una matriz vacía si no hay atributos personalizados. (Heredado de MemberInfo) |
| ICustomAttributeProvider.GetCustomAttributes(Type, Boolean) |
Devuelve una matriz de atributos personalizados definidos en este miembro, identificado por tipo o una matriz vacía si no hay atributos personalizados de ese tipo. (Heredado de MemberInfo) |
| ICustomAttributeProvider.IsDefined(Type, Boolean) |
Indica si se define una o varias instancias de |
Métodos de extensión
| Nombre | Description |
|---|---|
| GetCustomAttribute(MemberInfo, Type, Boolean) |
Recupera un atributo personalizado de un tipo especificado que se aplica a un miembro especificado y, opcionalmente, inspecciona los antecesores de ese miembro. |
| GetCustomAttribute(MemberInfo, Type) |
Recupera un atributo personalizado de un tipo especificado que se aplica a un miembro especificado. |
| GetCustomAttribute<T>(MemberInfo, Boolean) |
Recupera un atributo personalizado de un tipo especificado que se aplica a un miembro especificado y, opcionalmente, inspecciona los antecesores de ese miembro. |
| GetCustomAttribute<T>(MemberInfo) |
Recupera un atributo personalizado de un tipo especificado que se aplica a un miembro especificado. |
| GetCustomAttributes(MemberInfo, Boolean) |
Recupera una colección de atributos personalizados que se aplican a un miembro especificado y, opcionalmente, inspecciona los antecesores de ese miembro. |
| GetCustomAttributes(MemberInfo, Type, Boolean) |
Recupera una colección de atributos personalizados de un tipo especificado que se aplica a un miembro especificado y, opcionalmente, inspecciona los antecesores de ese miembro. |
| GetCustomAttributes(MemberInfo, Type) |
Recupera una colección de atributos personalizados de un tipo especificado que se aplica a un miembro especificado. |
| GetCustomAttributes(MemberInfo) |
Recupera una colección de atributos personalizados que se aplican a un miembro especificado. |
| GetCustomAttributes<T>(MemberInfo, Boolean) |
Recupera una colección de atributos personalizados de un tipo especificado que se aplica a un miembro especificado y, opcionalmente, inspecciona los antecesores de ese miembro. |
| GetCustomAttributes<T>(MemberInfo) |
Recupera una colección de atributos personalizados de un tipo especificado que se aplica a un miembro especificado. |
| IsDefined(MemberInfo, Type, Boolean) |
Indica si los atributos personalizados de un tipo especificado se aplican a un miembro especificado y, opcionalmente, se aplican a sus antecesores. |
| IsDefined(MemberInfo, Type) |
Indica si los atributos personalizados de un tipo especificado se aplican a un miembro especificado. |
Se aplica a
Seguridad para subprocesos
Este tipo es seguro para subprocesos.