FieldInfo.MemberType Свойство
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает значение MemberTypes, указывающее, что этот элемент является полем.
public:
virtual property System::Reflection::MemberTypes MemberType { System::Reflection::MemberTypes get(); };
public override System.Reflection.MemberTypes MemberType { get; }
member this.MemberType : System.Reflection.MemberTypes
Public Overrides ReadOnly Property MemberType As MemberTypes
Значение свойства
Значение MemberTypes, указывающее, что этот элемент является полем.
Реализации
Примеры
В следующем примере определяется, является ли указанный элемент полем, и отображается результат.
using namespace System;
using namespace System::Reflection;
// Make a field.
public ref class Myfield
{
private:
String^ field;
public:
Myfield()
: field( "a private field" )
{}
property String^ Field
{
String^ get()
{
return field;
}
}
};
int main()
{
Console::WriteLine( "\nReflection.FieldInfo" );
Myfield^ myfield = gcnew Myfield;
// Get the Type and FieldInfo.
Type^ MyType = Type::GetType( "Myfield" );
FieldInfo^ Myfieldinfo = MyType->GetField( "field", static_cast<BindingFlags>(BindingFlags::NonPublic | BindingFlags::Instance) );
// Get and display the MemberType.
Console::Write( "\n{0}.", MyType->FullName );
Console::Write( "{0} - ", Myfieldinfo->Name );
Console::Write( "{0};", myfield->Field );
MemberTypes Mymembertypes = Myfieldinfo->MemberType;
Console::Write( "MemberType is a {0}.", Mymembertypes );
return 0;
}
using System;
using System.Reflection;
// Make a field.
public class Myfield
{
private string field = "a private field";
public string Field
{
get{return field;}
}
}
public class Myfieldinfo
{
public static int Main()
{
Console.WriteLine ("\nReflection.FieldInfo");
Myfield Myfield = new Myfield();
// Get the Type and FieldInfo.
Type MyType = typeof(Myfield);
FieldInfo Myfieldinfo = MyType.GetField("field", BindingFlags.NonPublic|BindingFlags.Instance);
// Get and display the MemberType.
Console.Write ("\n{0}.", MyType.FullName);
Console.Write ("{0} - ", Myfieldinfo.Name);
Console.Write ("{0};", Myfield.Field);
MemberTypes Mymembertypes = Myfieldinfo.MemberType;
Console.Write("MemberType is a {0}.", Mymembertypes.ToString());
return 0;
}
}
Imports System.Reflection
' Make a field.
Public Class Myfield
Private m_field As String = "a private field"
Public ReadOnly Property Field() As String
Get
Return m_field
End Get
End Property
End Class
Public Class Myfieldinfo
Public Shared Sub Main()
Console.WriteLine()
Console.WriteLine(ControlChars.Cr & "Reflection.FieldInfo")
Console.WriteLine()
Dim Myfield As New Myfield()
' Get the Type and FieldInfo.
Dim MyType As Type = GetType(Myfield)
Dim Myfieldinfo As FieldInfo = _
MyType.GetField("m_field", BindingFlags.NonPublic Or BindingFlags.Instance)
' Get and display the MemberType.
Console.Write(ControlChars.Cr & "{0}.", MyType.FullName)
Console.Write("{0} - ", Myfieldinfo.Name)
Console.Write("{0};", Myfield.Field)
Dim Mymembertypes As MemberTypes = Myfieldinfo.MemberType
Console.Write("MemberType is a {0}.", Mymembertypes.ToString())
End Sub
End Class
Этот код выводит следующие результаты:
Reflection.FieldInfo
Myfield.field - a private field; MemberType is a Field
Комментарии
Это свойство переопределяет MemberType. Таким образом, при проверке набора MemberInfo объектов , например массива, возвращаемого методом GetMembers , MemberType свойство возвращается MemberTypes.Field только в том случае, если заданный элемент является полем.