RuntimeTypeHandle Struct
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Vertegenwoordigt een type met behulp van een intern metagegevenstoken.
public value class RuntimeTypeHandle
public value class RuntimeTypeHandle : IEquatable<RuntimeTypeHandle>, System::Runtime::Serialization::ISerializable
public value class RuntimeTypeHandle : System::Runtime::Serialization::ISerializable
public struct RuntimeTypeHandle
public struct RuntimeTypeHandle : IEquatable<RuntimeTypeHandle>, System.Runtime.Serialization.ISerializable
public struct RuntimeTypeHandle : System.Runtime.Serialization.ISerializable
[System.Serializable]
public struct RuntimeTypeHandle : System.Runtime.Serialization.ISerializable
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public struct RuntimeTypeHandle : System.Runtime.Serialization.ISerializable
type RuntimeTypeHandle = struct
type RuntimeTypeHandle = struct
interface ISerializable
[<System.Serializable>]
type RuntimeTypeHandle = struct
interface ISerializable
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type RuntimeTypeHandle = struct
interface ISerializable
Public Structure RuntimeTypeHandle
Public Structure RuntimeTypeHandle
Implements IEquatable(Of RuntimeTypeHandle), ISerializable
Public Structure RuntimeTypeHandle
Implements ISerializable
- Overname
- Kenmerken
- Implementeringen
Voorbeelden
In het volgende voorbeeld ziet u hoe u een RuntimeTypeHandle van een type of van een object kunt verkrijgen en hoe u de greep weer kunt omzetten in een type.
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
*/
open System
type MyClass1() =
let x = 0
member _.MyMethod() =
x
let myClass1 = MyClass1()
// Get the RuntimeTypeHandle from an object.
let myRTHFromObject = Type.GetTypeHandle myClass1
// Get the RuntimeTypeHandle from a type.
let myRTHFromType = typeof<MyClass1>.TypeHandle
printfn $"\nmyRTHFromObject.Value: {myRTHFromObject.Value}"
printfn $"myRTHFromObject.GetType(): {myRTHFromObject.GetType()}"
printfn "Get the type back from the handle..."
printfn $"Type.GetTypeFromHandle(myRTHFromObject): {Type.GetTypeFromHandle myRTHFromObject}"
printfn $"\nmyRTHFromObject.Equals(myRTHFromType): {myRTHFromObject.Equals myRTHFromType}"
printfn $"\nmyRTHFromType.Value: {myRTHFromType.Value}"
printfn $"myRTHFromType.GetType(): {myRTHFromType.GetType()}"
printfn "Get the type back from the handle..."
printfn $"Type.GetTypeFromHandle(myRTHFromType): {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
Imports System.Reflection
Public Class MyClass1
Private x As Integer = 0
Public Function MyMethod() As Integer
Return x
End Function 'MyMethod
End Class
Public Class MyClass2
Public Shared Sub Main()
Dim myClass1 As New MyClass1()
' Get the RuntimeTypeHandle from an object.
Dim myRTHFromObject As RuntimeTypeHandle = Type.GetTypeHandle(myClass1)
' Get the RuntimeTypeHandle from a type.
Dim myRTHFromType As RuntimeTypeHandle = GetType(MyClass1).TypeHandle
Console.WriteLine(vbLf & "myRTHFromObject.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(vbLf & "myRTHFromObject.Equals(myRTHFromType): {0}", _
myRTHFromObject.Equals(myRTHFromType))
Console.WriteLine(vbLf & "myRTHFromType.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))
End Sub
End Class
' This code example produces output similar to the following:
'
'myRTHFromObject.Value: 7549720
'myRTHFromObject.GetType(): System.RuntimeTypeHandle
'Get the type back from the handle...
'Type.GetTypeFromHandle(myRTHFromObject): MyClass1
'
'myRTHFromObject.Equals(myRTHFromType): True
'
'myRTHFromType.Value: 7549720
'myRTHFromType.GetType(): System.RuntimeTypeHandle
'Get the type back from the handle...
'Type.GetTypeFromHandle(myRTHFromType): MyClass1
Eigenschappen
| Name | Description |
|---|---|
| Value |
Hiermee haalt u een ingang op voor het type dat wordt vertegenwoordigd door dit exemplaar. |
Methoden
| Name | Description |
|---|---|
| Equals(Object) |
Geeft aan of het opgegeven object gelijk is aan de huidige RuntimeTypeHandle structuur. |
| Equals(RuntimeTypeHandle) |
Geeft aan of de opgegeven RuntimeTypeHandle structuur gelijk is aan de huidige RuntimeTypeHandle structuur. |
| FromIntPtr(IntPtr) |
Retourneert een nieuw RuntimeTypeHandle object dat is gemaakt van een ingang naar een RuntimeType. |
| GetHashCode() |
Retourneert de hash-code voor het huidige exemplaar. |
| GetModuleHandle() |
Hiermee haalt u een ingang op voor de module die het type bevat dat wordt vertegenwoordigd door het huidige exemplaar. |
| GetObjectData(SerializationInfo, StreamingContext) |
Verouderd.
Vult een SerializationInfo met de gegevens die nodig zijn om het type te deserialiseren dat wordt vertegenwoordigd door het huidige exemplaar. |
| ToIntPtr(RuntimeTypeHandle) |
Retourneert de interne aanwijzerweergave van een RuntimeTypeHandle object. |
Operators
| Name | Description |
|---|---|
| Equality(Object, RuntimeTypeHandle) |
Geeft aan of een object en een RuntimeTypeHandle structuur gelijk zijn. |
| Equality(RuntimeTypeHandle, Object) |
Geeft aan of een RuntimeTypeHandle structuur gelijk is aan een object. |
| Inequality(Object, RuntimeTypeHandle) |
Geeft aan of een object en een RuntimeTypeHandle structuur niet gelijk zijn. |
| Inequality(RuntimeTypeHandle, Object) |
Geeft aan of een RuntimeTypeHandle structuur niet gelijk is aan een object. |