导出 (0) 打印
全部展开
此文章由人工翻译。 将光标移到文章的句子上,以查看原文。
译文
原文

RuntimeTypeHandle 结构

表示使用内部元数据标记的类型。

命名空间:  System
程序集:  mscorlib(在 mscorlib.dll 中)

[SerializableAttribute]
[ComVisibleAttribute(true)]
public struct RuntimeTypeHandle : ISerializable

RuntimeTypeHandle 类型公开以下成员。

  名称说明
公共属性Value获取此实例所表示的类型的句柄。
页首

  名称说明
公共方法由 XNA Framework 提供支持Equals(Object)指示指定的对象是否等于当前的 RuntimeTypeHandle 结构。 (重写 ValueType.Equals(Object)。)

在 XNA Framework 中,此成员由 Equals(Object) 重写。
公共方法8c5h33k9.PortableClassLibrary(zh-cn,VS.100).gifEquals(RuntimeTypeHandle)指示指定的 RuntimeTypeHandle 结构是否等于当前的 RuntimeTypeHandle 结构。
受保护的方法由 XNA Framework 提供支持8c5h33k9.PortableClassLibrary(zh-cn,VS.100).gifFinalize允许对象在“垃圾回收”回收之前尝试释放资源并执行其他清理操作。 (继承自 Object。)
公共方法由 XNA Framework 提供支持GetHashCode返回当前实例的哈希代码。 (重写 ValueType.GetHashCode()。)

在 XNA Framework 中,此成员由 GetHashCode() 重写。
公共方法GetModuleHandle获取包含当前实例所表示类型的模块的句柄。
公共方法GetObjectData用反序列化当前实例表示的类型所必需的数据填充 SerializationInfo
公共方法由 XNA Framework 提供支持8c5h33k9.PortableClassLibrary(zh-cn,VS.100).gifGetType获取当前实例的 Type (继承自 Object。)
受保护的方法由 XNA Framework 提供支持8c5h33k9.PortableClassLibrary(zh-cn,VS.100).gifMemberwiseClone创建当前 Object 的浅表副本。 (继承自 Object。)
公共方法由 XNA Framework 提供支持8c5h33k9.PortableClassLibrary(zh-cn,VS.100).gifToString返回该实例的完全限定类型名。 (继承自 ValueType。)

在 XNA Framework3.0ToString()


ToString()
页首

  名称说明
公共运算符静态成员Equality(Object, RuntimeTypeHandle)指示某个对象与 RuntimeTypeHandle 结构是否相等。
公共运算符静态成员8c5h33k9.PortableClassLibrary(zh-cn,VS.100).gifEquality(RuntimeTypeHandle, Object)指示 RuntimeTypeHandle 结构与某个对象是否相等。
公共运算符静态成员Inequality(Object, RuntimeTypeHandle)指示某个对象与 RuntimeTypeHandle 结构是否不相等。
公共运算符静态成员8c5h33k9.PortableClassLibrary(zh-cn,VS.100).gifInequality(RuntimeTypeHandle, Object)指示 RuntimeTypeHandle 结构与某个对象是否不相等。
页首

下面的示例演示如何从类型或对象中获取 RuntimeTypeHandle 以及如何将句柄转变回类型。


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
 */


.NET Framework

受以下版本支持:4、3.5、3.0、2.0、1.1、1.0

.NET Framework Client Profile

受以下版本支持:4、3.5 SP1

受以下版本支持:

Windows 7, Windows Vista SP1 或更高版本, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008(不支持服务器核心), Windows Server 2008 R2(支持 SP1 或更高版本的服务器核心), Windows Server 2003 SP2

.NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。

社区附加资源

添加
显示:
© 2015 Microsoft