MemberTypes 枚举

定义

标记被定义为 MemberInfo 的派生类的每种成员类型。Marks each type of member that is defined as a derived class of MemberInfo.

此枚举有一个 FlagsAttribute 属性,允许按位组合成员值。

public enum class MemberTypes
[System.Flags]
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public enum MemberTypes
type MemberTypes = 
Public Enum MemberTypes
继承
MemberTypes
属性

字段

All 191

指定所有成员类型。Specifies all member types.

Constructor 1

指定该成员是构造函数。Specifies that the member is a constructor.

Custom 64

指定该成员是自定义成员类型。Specifies that the member is a custom member type.

Event 2

指定该成员是事件。Specifies that the member is an event.

Field 4

指定该成员是字段。Specifies that the member is a field.

Method 8

指定该成员是方法。Specifies that the member is a method.

NestedType 128

指定该成员是嵌套类型。Specifies that the member is a nested type.

Property 16

指定该成员是属性。Specifies that the member is a property.

TypeInfo 32

指定该成员是类型。Specifies that the member is a type.

示例

下面的示例显示 ReflectionTypeLoadException 类的成员的名称及其关联的成员类型。The following example displays the names of the members of the ReflectionTypeLoadException class and their associated member types.

using namespace System;
using namespace System::Reflection;
 
void main() 
{
    // Get the type of a chosen class.
    Type^ t = ReflectionTypeLoadException::typeid;

    // Get the MemberInfo array.
    array<MemberInfo^>^ members = t->GetMembers();

    // Get and display the name and the MemberType for each member.
    Console::WriteLine("Members of {0}", t->Name);
    for each (MemberInfo^ member in members) { 
        MemberTypes memberType = member->MemberType; 
        Console::WriteLine("   {0}: {1}", member->Name, memberType);
    }
}
// The example displays the following output:
//       Members of ReflectionTypeLoadException
//          get_Types: Method
//          get_LoaderExceptions: Method
//          GetObjectData: Method
//          get_Message: Method
//          get_Data: Method
//          GetBaseException: Method
//          get_InnerException: Method
//          get_TargetSite: Method
//          get_StackTrace: Method
//          get_HelpLink: Method
//          set_HelpLink: Method
//          get_Source: Method
//          set_Source: Method
//          ToString: Method
//          get_HResult: Method
//          GetType: Method
//          Equals: Method
//          GetHashCode: Method
//          GetType: Method
//          .ctor: Constructor
//          .ctor: Constructor
//          Types: Property
//          LoaderExceptions: Property
//          Message: Property
//          Data: Property
//          InnerException: Property
//          TargetSite: Property
//          StackTrace: Property
//          HelpLink: Property
//          Source: Property
//          HResult: Property
using System;
using System.Reflection;
 
class Example
{
    public static void Main() 
    {
        // Get the type of a chosen class.
        Type t = typeof(ReflectionTypeLoadException);
 
        // Get the MemberInfo array.
        MemberInfo[] members = t.GetMembers();
 
        // Get and display the name and the MemberType for each member.
        Console.WriteLine("Members of {0}", t.Name);
        foreach (var member in members) { 
            MemberTypes memberType = member.MemberType; 
            Console.WriteLine("   {0}: {1}", member.Name, memberType);
        }
    }
}
// The example displays the following output:
//       Members of ReflectionTypeLoadException
//          get_Types: Method
//          get_LoaderExceptions: Method
//          GetObjectData: Method
//          get_Message: Method
//          get_Data: Method
//          GetBaseException: Method
//          get_InnerException: Method
//          get_TargetSite: Method
//          get_StackTrace: Method
//          get_HelpLink: Method
//          set_HelpLink: Method
//          get_Source: Method
//          set_Source: Method
//          ToString: Method
//          get_HResult: Method
//          GetType: Method
//          Equals: Method
//          GetHashCode: Method
//          GetType: Method
//          .ctor: Constructor
//          .ctor: Constructor
//          Types: Property
//          LoaderExceptions: Property
//          Message: Property
//          Data: Property
//          InnerException: Property
//          TargetSite: Property
//          StackTrace: Property
//          HelpLink: Property
//          Source: Property
//          HResult: Property
Imports System.Reflection

Module Example
    Public Sub Main()
        ' Get the type of a particular class.
        Dim t As Type = GetType(ReflectionTypeLoadException)

        ' Get the MemberInfo array.
        Dim members As MemberInfo() = t.GetMembers()

        ' Get and display the name and the MemberType for each member.
        Console.WriteLine("Members of {0}", t.Name)
        For Each member In members
            Dim memberType As MemberTypes = member.MemberType
            Console.WriteLine("   {0}: {1}", member.Name, memberType)
        Next
    End Sub
End Module
' The example displays the following output:
'       Members of ReflectionTypeLoadException
'          get_Types: Method
'          get_LoaderExceptions: Method
'          GetObjectData: Method
'          get_Message: Method
'          get_Data: Method
'          GetBaseException: Method
'          get_InnerException: Method
'          get_TargetSite: Method
'          get_StackTrace: Method
'          get_HelpLink: Method
'          set_HelpLink: Method
'          get_Source: Method
'          set_Source: Method
'          ToString: Method
'          get_HResult: Method
'          GetType: Method
'          Equals: Method
'          GetHashCode: Method
'          GetType: Method
'          .ctor: Constructor
'          .ctor: Constructor
'          Types: Property
'          LoaderExceptions: Property
'          Message: Property
'          Data: Property
'          InnerException: Property
'          TargetSite: Property
'          StackTrace: Property
'          HelpLink: Property
'          Source: Property
'          HResult: Property

注解

这些枚举值由以下属性返回:These enumeration values are returned by the following properties:

获取类型的 @no__t 0 值:To obtain the MemberTypes value for a type:

  1. 获取表示该类型的 @no__t 0 对象。Get a Type object that represents that type.

  2. 检索 Type.MemberType 属性的值。Retrieve the value of the Type.MemberType property.

为,则获取类型成员的 @no__t 0 值:To get the MemberTypes values for the members of a type.:

  1. 获取表示该类型的 @no__t 0 对象。Get a Type object that represents that type.

  2. 通过调用 @no__t 的方法,检索表示该类型成员的 @no__t 0 数组。Retrieve the MemberInfo array that represents the members of that type by calling the Type.GetMembers method.

  3. 从数组中每个成员的 MemberInfo.MemberType 属性检索的值。Retrieve the value of the From the MemberInfo.MemberType property for each member in the array. Visual Basic 中C#的 @no__t 0 语句或 Select Case 语句通常用于处理成员类型。A switch statement in C# or Select Case statement in Visual Basic is typically used to process member types.

MemberTypes 匹配 corhdr.h 文件中定义的 CorTypeAttr。MemberTypes matches CorTypeAttr as defined in the corhdr.h file.

适用于