MemberTypes Перечисление
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Отмечает каждый тип элемент, определенный как производный класс класса MemberInfo.
Это перечисление поддерживает побитовую комбинацию значений его членов.
public enum class MemberTypes
[System.Flags]
public enum MemberTypes
[System.Flags]
[System.Serializable]
public enum MemberTypes
[System.Flags]
[System.Serializable]
[System.Runtime.InteropServices.ComVisible(true)]
public enum MemberTypes
[<System.Flags>]
type MemberTypes =
[<System.Flags>]
[<System.Serializable>]
type MemberTypes =
[<System.Flags>]
[<System.Serializable>]
[<System.Runtime.InteropServices.ComVisible(true)>]
type MemberTypes =
Public Enum MemberTypes
- Наследование
- Атрибуты
Поля
All | 191 | Задает все типы элементов. |
Constructor | 1 | Указывает, что элемент — это конструктор. |
Custom | 64 | Указывает, что элемент — это тип настраиваемого элемента. |
Event | 2 | Указывает, что элемент — это событие. |
Field | 4 | Указывает, что элемент — это поле. |
Method | 8 | Указывает, что элемент — это метод. |
NestedType | 128 | Указывает, что элемент — это вложенный тип. |
Property | 16 | Указывает, что элемент — это свойство. |
TypeInfo | 32 | Указывает, что элемент — это тип. |
Примеры
В следующем примере отображаются имена членов ReflectionTypeLoadException класса и связанные с ними типы элементов.
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
Комментарии
Эти значения перечисления возвращаются следующими свойствами:
Чтобы получить MemberTypes значение для типа, выполните следующие действия:
Получение Type объекта, представляющего этот тип.
Получение значения Type.MemberType свойства .
Чтобы получить MemberTypes значения для членов типа, выполните следующие действия:
Получение Type объекта, представляющего этот тип.
MemberInfo Получите массив, представляющий элементы этого типа, путем вызова Type.GetMembers метода .
Получение значения свойства From для MemberInfo.MemberType каждого элемента в массиве. Оператор
switch
в C# илиSelect Case
оператор в Visual Basic обычно используется для обработки типов элементов.
MemberTypes соответствует CorTypeAttr, как определено в файле corhdr.h.