MemberInfo.ReflectedType MemberInfo.ReflectedType MemberInfo.ReflectedType MemberInfo.ReflectedType Property

定义

获取用于获取 MemberInfo 的此实例的类对象。Gets the class object that was used to obtain this instance of MemberInfo.

public:
 abstract property Type ^ ReflectedType { Type ^ get(); };
public abstract Type ReflectedType { get; }
member this.ReflectedType : Type
Public MustOverride ReadOnly Property ReflectedType As Type

属性值

Type 对象,通过它获取了此 MemberInfo 对象。The Type object through which this MemberInfo object was obtained.

实现

示例

下面的代码示例ReflectedType演示如何在从类型MemberInfo Object获得的Object.ToString MemberInfo中查看成员时进行更改,以及从MemberInfo继承的类本身继承Object但不重写Object.ToStringThe following code example shows how the ReflectedType changes when the member Object.ToString is viewed from a MemberInfo obtained from type Object and from a MemberInfo obtained from the MemberInfo class itself, which inherits Object but does not override Object.ToString.

using namespace System;
using namespace System::Reflection;

int main()
{
    MemberInfo^ m1 = Object::typeid->GetMethod("ToString");
    MemberInfo^ m2 = MemberInfo::typeid->GetMethod("ToString");

    Console::WriteLine("m1.DeclaringType: {0}", m1->DeclaringType);
    Console::WriteLine("m1.ReflectedType: {0}", m1->ReflectedType);
    Console::WriteLine();
    Console::WriteLine("m2.DeclaringType: {0}", m2->DeclaringType);
    Console::WriteLine("m2.ReflectedType: {0}", m2->ReflectedType);

    //Console::ReadLine();
}

/* This code example produces the following output:

m1.DeclaringType: System.Object
m1.ReflectedType: System.Object

m2.DeclaringType: System.Object
m2.ReflectedType: System.Reflection.MemberInfo
 */
using System;
using System.Reflection;

public class Example
{
    static void Main()
    {
        MemberInfo m1 = typeof(Object).GetMethod("ToString");
        MemberInfo m2 = typeof(MemberInfo).GetMethod("ToString");

        Console.WriteLine("m1.DeclaringType: {0}", m1.DeclaringType);
        Console.WriteLine("m1.ReflectedType: {0}", m1.ReflectedType);
        Console.WriteLine();
        Console.WriteLine("m2.DeclaringType: {0}", m2.DeclaringType);
        Console.WriteLine("m2.ReflectedType: {0}", m2.ReflectedType);

        //Console.ReadLine();
    }
}

/* This code example produces the following output:

m1.DeclaringType: System.Object
m1.ReflectedType: System.Object

m2.DeclaringType: System.Object
m2.ReflectedType: System.Reflection.MemberInfo
 */
Imports System.Reflection

Module Example

    Sub Main()

        Dim m1 As MemberInfo = GetType(Object).GetMethod("ToString")
        Dim m2 As MemberInfo = GetType(MemberInfo).GetMethod("ToString")

        Console.WriteLine("m1.DeclaringType: {0}", m1.DeclaringType)
        Console.WriteLine("m1.ReflectedType: {0}", m1.ReflectedType)
        Console.WriteLine()
        Console.WriteLine("m2.DeclaringType: {0}", m2.DeclaringType)
        Console.WriteLine("m2.ReflectedType: {0}", m2.ReflectedType)

        'Console.ReadLine()
    End Sub
End Module

' This code example produces the following output:
'
' m1.DeclaringType: System.Object
' m1.ReflectedType: System.Object
'
' m2.DeclaringType: System.Object
' m2.ReflectedType: System.Reflection.MemberInfo
'

注解

属性检索用于获取的此实例的MemberInfo对象。Type ReflectedTypeThe ReflectedType property retrieves the Type object that was used to obtain this instance of MemberInfo. 如果此DeclaringType MemberInfo对象表示继承自基类的成员,则这可能与属性的值不同。This may differ from the value of the DeclaringType property if this MemberInfo object represents a member that is inherited from a base class.

如果对象是全局成员(即,如果它是Module.GetMethods从返回模块上的全局方法的方法获得的),则返回DeclaringType的将为nullMemberInfoIf the MemberInfo object is a global member (that is, if it was obtained from the Module.GetMethods method, which returns global methods on a module), the returned DeclaringType will be null.

适用于