FieldInfo 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 campo y proporciona acceso a los metadatos de campo.
public ref class FieldInfo abstract : System::Reflection::MemberInfo
public ref class FieldInfo abstract : System::Reflection::MemberInfo, System::Runtime::InteropServices::_FieldInfo
public abstract class FieldInfo : System.Reflection.MemberInfo
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Serializable]
public abstract class FieldInfo : System.Reflection.MemberInfo, System.Runtime.InteropServices._FieldInfo
[System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class FieldInfo : System.Reflection.MemberInfo, System.Runtime.InteropServices._FieldInfo
type FieldInfo = class
inherit MemberInfo
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Serializable>]
type FieldInfo = class
inherit MemberInfo
interface _FieldInfo
[<System.Runtime.InteropServices.ClassInterface(System.Runtime.InteropServices.ClassInterfaceType.None)>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type FieldInfo = class
inherit MemberInfo
interface _FieldInfo
Public MustInherit Class FieldInfo
Inherits MemberInfo
Public MustInherit Class FieldInfo
Inherits MemberInfo
Implements _FieldInfo
- Herencia
- Derivado
- Atributos
- Implementaciones
Ejemplos
En el ejemplo siguiente se usa el Type.GetFields método para obtener la información relacionada con el campo de la FieldInfo clase y, a continuación, se muestran los atributos de campo.
using System;
using System.Reflection;
public class FieldInfoClass
{
public int myField1 = 0;
protected string myField2 = null;
public static void Main()
{
FieldInfo[] myFieldInfo;
Type myType = typeof(FieldInfoClass);
// Get the type and fields of FieldInfoClass.
myFieldInfo = myType.GetFields(BindingFlags.NonPublic | BindingFlags.Instance
| BindingFlags.Public);
Console.WriteLine("\nThe fields of " +
"FieldInfoClass are \n");
// Display the field information of FieldInfoClass.
for(int i = 0; i < myFieldInfo.Length; i++)
{
Console.WriteLine("\nName : {0}", myFieldInfo[i].Name);
Console.WriteLine("Declaring Type : {0}", myFieldInfo[i].DeclaringType);
Console.WriteLine("IsPublic : {0}", myFieldInfo[i].IsPublic);
Console.WriteLine("MemberType : {0}", myFieldInfo[i].MemberType);
Console.WriteLine("FieldType : {0}", myFieldInfo[i].FieldType);
Console.WriteLine("IsFamily : {0}", myFieldInfo[i].IsFamily);
}
}
}
Imports System.Reflection
Public Class FieldInfoClass
Public myField1 As Integer = 0
Protected myField2 As String = Nothing
Public Shared Sub Main()
Dim myFieldInfo() As FieldInfo
Dim myType As Type = GetType(FieldInfoClass)
' Get the type and fields of FieldInfoClass.
myFieldInfo = myType.GetFields(BindingFlags.NonPublic Or _
BindingFlags.Instance Or BindingFlags.Public)
Console.WriteLine(ControlChars.NewLine & "The fields of " & _
"FieldInfoClass class are " & ControlChars.NewLine)
' Display the field information of FieldInfoClass.
Dim i As Integer
For i = 0 To myFieldInfo.Length - 1
Console.WriteLine(ControlChars.NewLine + "Name : {0}", myFieldInfo(i).Name)
Console.WriteLine("Declaring Type : {0}", myFieldInfo(i).DeclaringType)
Console.WriteLine("IsPublic : {0}", myFieldInfo(i).IsPublic)
Console.WriteLine("MemberType : {0}", myFieldInfo(i).MemberType)
Console.WriteLine("FieldType : {0}", myFieldInfo(i).FieldType)
Console.WriteLine("IsFamily : {0}", myFieldInfo(i).IsFamily)
Next i
End Sub
End Class
Comentarios
La información del campo se obtiene de los metadatos. La FieldInfo clase no tiene un constructor público.
FieldInfo Los objetos se obtienen llamando al GetFields método o GetField de un Type objeto .
Los campos son variables definidas en la clase . FieldInfo proporciona acceso a los metadatos de un campo dentro de una clase y proporciona una funcionalidad de conjunto dinámico y obtención para el campo. La clase no se carga en memoria hasta que se llama a invoke or get en el objeto .
Notas a los implementadores
Al heredar de FieldInfo, debe invalidar los siguientes miembros: GetValue(Object) y SetValue(Object, Object, BindingFlags, Binder, CultureInfo).
Constructores
| Nombre | Description |
|---|---|
| FieldInfo() |
Inicializa una nueva instancia de la clase |
Propiedades
| Nombre | Description |
|---|---|
| Attributes |
Obtiene los atributos asociados a este campo. |
| 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) |
| FieldHandle |
Obtiene un , |
| FieldType |
Obtiene el tipo de este objeto de campo. |
| IsAssembly |
Obtiene un valor que indica si la posible visibilidad de este campo se describe mediante Assembly; es decir, el campo es visible como máximo para otros tipos del mismo ensamblado y no es visible para los tipos derivados fuera del ensamblado. |
| IsFamily |
Obtiene un valor que indica si la visibilidad de este campo se describe mediante Family; es decir, el campo solo está visible dentro de su clase y clases derivadas. |
| IsFamilyAndAssembly |
Obtiene un valor que indica si la visibilidad de este campo se describe mediante FamANDAssem; es decir, se puede tener acceso al campo desde clases derivadas, pero solo si están en el mismo ensamblado. |
| IsFamilyOrAssembly |
Obtiene un valor que indica si la visibilidad potencial de este campo se describe mediante FamORAssem; es decir, las clases derivadas dondequiera que estén y las clases del mismo ensamblado pueden tener acceso al campo. |
| IsInitOnly |
Obtiene un valor que indica si el campo solo se puede establecer en el cuerpo del constructor. |
| IsLiteral |
Obtiene un valor que indica si el valor se escribe en tiempo de compilación y no se puede cambiar. |
| IsNotSerialized |
Obtiene un valor que indica si este campo tiene el |
| IsPinvokeImpl |
Obtiene un valor que indica si el atributo correspondiente |
| IsPrivate |
Obtiene un valor que indica si el campo es privado. |
| IsPublic |
Obtiene un valor que indica si el campo es público. |
| IsSecurityCritical |
Obtiene un valor que indica si el campo actual es crítico para la seguridad o crítico para la seguridad en el nivel de confianza actual. |
| IsSecuritySafeCritical |
Obtiene un valor que indica si el campo actual es crítico para la seguridad en el nivel de confianza actual. |
| IsSecurityTransparent |
Obtiene un valor que indica si el campo actual es transparente en el nivel de confianza actual. |
| IsSpecialName |
Obtiene un valor que indica si el atributo correspondiente |
| IsStatic |
Obtiene un valor que indica si el campo es estático. |
| MemberType |
Obtiene un MemberTypes valor que indica que este miembro es un campo. |
| MetadataToken |
Obtiene un valor que identifica un elemento de metadatos. (Heredado de MemberInfo) |
| 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) |
| GetFieldFromHandle(RuntimeFieldHandle, RuntimeTypeHandle) |
Obtiene un FieldInfo para el campo representado por el identificador especificado para el tipo genérico especificado. |
| GetFieldFromHandle(RuntimeFieldHandle) |
Obtiene un FieldInfo para el campo representado por el identificador especificado. |
| GetHashCode() |
Devuelve el código hash de esta instancia. |
| GetOptionalCustomModifiers() |
Obtiene una matriz de tipos que identifican los modificadores personalizados opcionales del campo. |
| GetRawConstantValue() |
Devuelve un valor literal asociado al campo por un compilador. |
| GetRequiredCustomModifiers() |
Obtiene una matriz de tipos que identifican los modificadores personalizados necesarios de la propiedad . |
| GetType() |
Detecta los atributos de un campo de clase y proporciona acceso a los metadatos de campo. |
| GetValue(Object) |
Cuando se reemplaza en una clase derivada, devuelve el valor de un campo admitido por un objeto determinado. |
| GetValueDirect(TypedReference) |
Devuelve el valor de un campo admitido por un objeto determinado. |
| HasSameMetadataDefinitionAs(MemberInfo) |
Detecta los atributos de un campo y proporciona acceso a los metadatos de campo. (Heredado de MemberInfo) |
| 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) |
| SetValue(Object, Object, BindingFlags, Binder, CultureInfo) |
Cuando se reemplaza en una clase derivada, establece el valor del campo admitido por el objeto especificado. |
| SetValue(Object, Object) |
Establece el valor del campo admitido por el objeto especificado. |
| SetValueDirect(TypedReference, Object) |
Establece el valor del campo admitido por el objeto especificado. |
| ToString() |
Devuelve una cadena que representa el objeto actual. (Heredado de Object) |
Operadores
| Nombre | Description |
|---|---|
| Equality(FieldInfo, FieldInfo) |
Indica si dos FieldInfo objetos son iguales. |
| Inequality(FieldInfo, FieldInfo) |
Indica si dos FieldInfo objetos no son iguales. |
Implementaciones de interfaz explícitas
| Nombre | Description |
|---|---|
| _FieldInfo.GetIDsOfNames(Guid, IntPtr, UInt32, UInt32, IntPtr) |
Asigna un conjunto de nombres a un conjunto correspondiente de identificadores de envío. |
| _FieldInfo.GetType() | |
| _FieldInfo.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. |
| _FieldInfo.GetTypeInfoCount(UInt32) |
Recupera el número de interfaces de información de tipo que proporciona un objeto (0 ó 1). |
| _FieldInfo.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) |
| 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.