Ler en inglés

Compartir por


RuntimeTypeHandle Estructura

Definición

Representa un tipo con un token de metadatos interno.

C#
public struct RuntimeTypeHandle
C#
public struct RuntimeTypeHandle : System.Runtime.Serialization.ISerializable
C#
public struct RuntimeTypeHandle : IEquatable<RuntimeTypeHandle>, System.Runtime.Serialization.ISerializable
C#
[System.Serializable]
public struct RuntimeTypeHandle : System.Runtime.Serialization.ISerializable
C#
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public struct RuntimeTypeHandle : System.Runtime.Serialization.ISerializable
Herencia
RuntimeTypeHandle
Atributos
Implementaciones

Ejemplos

En el ejemplo siguiente se muestra cómo obtener un RuntimeTypeHandle objeto de un tipo o de un objeto y cómo volver a convertir el identificador en un tipo.

C#
using System;
using System.Reflection;

public class MyClass1
{
    private int x=0;
    public int MyMethod()
    {
        return x;
    }
}

public class MyClass2
{
    public static void Main()
    {
        MyClass1 myClass1 = new MyClass1();

        // Get the RuntimeTypeHandle from an object.
        RuntimeTypeHandle myRTHFromObject = Type.GetTypeHandle(myClass1);
        // Get the RuntimeTypeHandle from a type.
        RuntimeTypeHandle myRTHFromType = typeof(MyClass1).TypeHandle;

        Console.WriteLine("\nmyRTHFromObject.Value:  {0}", myRTHFromObject.Value);
        Console.WriteLine("myRTHFromObject.GetType():  {0}", myRTHFromObject.GetType());
        Console.WriteLine("Get the type back from the handle...");
        Console.WriteLine("Type.GetTypeFromHandle(myRTHFromObject):  {0}",
            Type.GetTypeFromHandle(myRTHFromObject));

        Console.WriteLine("\nmyRTHFromObject.Equals(myRTHFromType):  {0}",
            myRTHFromObject.Equals(myRTHFromType));

        Console.WriteLine("\nmyRTHFromType.Value:  {0}", myRTHFromType.Value);
        Console.WriteLine("myRTHFromType.GetType():  {0}", myRTHFromType.GetType());
        Console.WriteLine("Get the type back from the handle...");
        Console.WriteLine("Type.GetTypeFromHandle(myRTHFromType):  {0}",
            Type.GetTypeFromHandle(myRTHFromType));
    }
}

/* This code example produces output similar to the following:

myRTHFromObject.Value:  799464
myRTHFromObject.GetType():  System.RuntimeTypeHandle
Get the type back from the handle...
Type.GetTypeFromHandle(myRTHFromObject):  MyClass1

myRTHFromObject.Equals(myRTHFromType):  True

myRTHFromType.Value:  799464
myRTHFromType.GetType():  System.RuntimeTypeHandle
Get the type back from the handle...
Type.GetTypeFromHandle(myRTHFromType):  MyClass1
 */

Propiedades

Value

Obtiene un identificador para el tipo representado por esta instancia.

Métodos

Equals(Object)

Indica si el objeto especificado es igual a la estructura RuntimeTypeHandle actual.

Equals(RuntimeTypeHandle)

Indica si la estructura RuntimeTypeHandle especificada es igual a la estructura RuntimeTypeHandle actual.

FromIntPtr(IntPtr)

Devuelve un nuevo RuntimeTypeHandle objeto creado a partir de un identificador a un RuntimeType.

GetHashCode()

Devuelve el código hash de la instancia actual.

GetModuleHandle()

Obtiene un identificador para el módulo que contiene el tipo representado por la instancia actual.

GetObjectData(SerializationInfo, StreamingContext)

Llena un SerializationInfo con los datos necesarios para deserializar el tipo representado por la instancia actual.

ToIntPtr(RuntimeTypeHandle)

Devuelve la representación de puntero interna de un RuntimeTypeHandle objeto .

Operadores

Equality(Object, RuntimeTypeHandle)

Indica si un objeto y una estructura RuntimeTypeHandle son iguales.

Equality(RuntimeTypeHandle, Object)

Indica si una estructura RuntimeTypeHandle es igual a un objeto.

Inequality(Object, RuntimeTypeHandle)

Indica si un objeto y una estructura RuntimeTypeHandle no son iguales.

Inequality(RuntimeTypeHandle, Object)

Indica si una estructura RuntimeTypeHandle no es igual a un objeto.

Se aplica a

Produto Versións
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8
.NET Standard 1.0, 1.1, 1.2, 1.3, 1.4, 1.5, 1.6, 2.0, 2.1
UWP 10.0