PropertyInfo.GetGetMethod Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Возвращает элемент MethodInfo, предоставляющий метод доступа get для этого свойства.
Перегрузки
| GetGetMethod(Boolean) |
При переопределении в производном классе возвращает для этого свойства открытый или неоткрытый метод доступа |
| GetGetMethod() |
Возвращает открытый метод доступа |
GetGetMethod(Boolean)
- Исходный код:
- PropertyInfo.cs
- Исходный код:
- PropertyInfo.cs
- Исходный код:
- PropertyInfo.cs
При переопределении в производном классе возвращает для этого свойства открытый или неоткрытый метод доступа get.
public:
abstract System::Reflection::MethodInfo ^ GetGetMethod(bool nonPublic);
public abstract System.Reflection.MethodInfo? GetGetMethod (bool nonPublic);
public abstract System.Reflection.MethodInfo GetGetMethod (bool nonPublic);
abstract member GetGetMethod : bool -> System.Reflection.MethodInfo
Public MustOverride Function GetGetMethod (nonPublic As Boolean) As MethodInfo
Параметры
- nonPublic
- Boolean
Указывает, должен ли возвращаться неоткрытый метод доступа get. Значение true, если метод должен быть возвращен; в противном случае — значение false.
Возвращаемое значение
Объект MethodInfo, предоставляющий метод доступа get для этого свойства, если значение nonPublic равно true. Возвращает значение null, если nonPublic равен false и метод get не является открытым, либо если свойство nonPublic равно true и методы get отсутствуют.
Реализации
Исключения
Запрошенный метод не является открытым, и вызывающая сторона не имеет ReflectionPermission для отражения в этом методе.
Примеры
В следующем примере отображается открытый или недоступный get метод доступа для указанного свойства.
using namespace System;
using namespace System::Reflection;
// Define a property.
public ref class Myproperty
{
private:
String^ caption;
public:
Myproperty()
: caption( "A Default caption" )
{}
property String^ Caption
{
String^ get()
{
return caption;
}
void set( String^ value )
{
if ( caption != value )
{
caption = value;
}
}
}
};
int main()
{
Console::WriteLine( "\nReflection.PropertyInfo" );
// Get the type and PropertyInfo for two separate properties.
Type^ MyTypea = Type::GetType( "Myproperty" );
PropertyInfo^ Mypropertyinfoa = MyTypea->GetProperty( "Caption" );
Type^ MyTypeb = Type::GetType( "System.Reflection.MethodInfo" );
PropertyInfo^ Mypropertyinfob = MyTypeb->GetProperty( "MemberType" );
// Get and display the GetGetMethod method for each property.
MethodInfo^ Mygetmethodinfoa = Mypropertyinfoa->GetGetMethod();
Console::Write( "\nGetAccessor for {0} returns a {1}", Mypropertyinfoa->Name, Mygetmethodinfoa->ReturnType );
MethodInfo^ Mygetmethodinfob = Mypropertyinfob->GetGetMethod();
Console::Write( "\nGetAccessor for {0} returns a {1}", Mypropertyinfob->Name, Mygetmethodinfob->ReturnType );
// Display the GetGetMethod without using the MethodInfo.
Console::Write( "\n{0}.{1} GetGetMethod - {2}", MyTypea->FullName, Mypropertyinfoa->Name, Mypropertyinfoa->GetGetMethod() );
Console::Write( "\n{0}.{1} GetGetMethod - {2}", MyTypeb->FullName, Mypropertyinfob->Name, Mypropertyinfob->GetGetMethod() );
return 0;
}
using System;
using System.Reflection;
// Define a property.
public class Myproperty
{
private string caption = "A Default caption";
public string Caption
{
get{return caption;}
set {if(caption!=value) {caption = value;}
}
}
}
class Mypropertyinfo
{
public static int Main()
{
Console.WriteLine ("\nReflection.PropertyInfo");
// Get the type and PropertyInfo for two separate properties.
Type MyTypea = Type.GetType("Myproperty");
PropertyInfo Mypropertyinfoa = MyTypea.GetProperty("Caption");
Type MyTypeb = Type.GetType("System.Reflection.MethodInfo");
PropertyInfo Mypropertyinfob = MyTypeb.GetProperty("MemberType");
// Get and display the GetGetMethod method for each property.
MethodInfo Mygetmethodinfoa = Mypropertyinfoa.GetGetMethod();
Console.Write ("\nGetAccessor for " + Mypropertyinfoa.Name
+ " returns a " + Mygetmethodinfoa.ReturnType);
MethodInfo Mygetmethodinfob = Mypropertyinfob.GetGetMethod();
Console.Write ("\nGetAccessor for " + Mypropertyinfob.Name
+ " returns a " + Mygetmethodinfob.ReturnType);
// Display the GetGetMethod without using the MethodInfo.
Console.Write ("\n" + MyTypea.FullName + "." + Mypropertyinfoa.Name
+ " GetGetMethod - " + Mypropertyinfoa.GetGetMethod());
Console.Write ("\n" + MyTypeb.FullName + "." + Mypropertyinfob.Name
+ " GetGetMethod - " + Mypropertyinfob.GetGetMethod());
return 0;
}
}
Imports System.Reflection
' Define a property.
Public Class Myproperty
Private myCaption As String = "A Default caption"
Public Property Caption() As String
Get
Return myCaption
End Get
Set(ByVal Value As String)
If myCaption <> value Then
myCaption = value
End If
End Set
End Property
End Class
Class Mypropertyinfo
Public Shared Function Main() As Integer
Console.WriteLine(ControlChars.CrLf & "Reflection.PropertyInfo")
' Get the type and PropertyInfo for two separate properties.
Dim MyTypea As Type = Type.GetType("Myproperty")
Dim Mypropertyinfoa As PropertyInfo = MyTypea.GetProperty("Caption")
Dim MyTypeb As Type = Type.GetType("System.Reflection.MethodInfo")
Dim Mypropertyinfob As PropertyInfo = MyTypeb.GetProperty("MemberType")
' Get and display the GetGetMethod Method for each property.
Dim Mygetmethodinfoa As MethodInfo = Mypropertyinfoa.GetGetMethod()
Console.WriteLine("GetAccessor for " & _
Mypropertyinfoa.Name & " returns a " & _
Mygetmethodinfoa.ReturnType.ToString())
Dim Mygetmethodinfob As MethodInfo = Mypropertyinfob.GetGetMethod()
Console.WriteLine("GetAccessor for " & _
Mypropertyinfob.Name & " returns a " & _
Mygetmethodinfob.ReturnType.ToString())
' Display the GetGetMethod without using the MethodInfo.
Console.WriteLine(MyTypea.FullName & "." & _
Mypropertyinfoa.Name & " GetGetMethod - " & _
Mypropertyinfoa.GetGetMethod().ToString())
Console.WriteLine(MyTypeb.FullName & "." & _
Mypropertyinfob.Name & " GetGetMethod - " & _
Mypropertyinfob.GetGetMethod().ToString())
Return 0
End Function
End Class
Комментарии
Это свойство представляет MethodInfo метод доступа get.
Чтобы использовать GetGetMethod метод , сначала получите класс Type.
TypeИз получите PropertyInfo. В используйте PropertyInfoGetGetMethod метод .
Применяется к
GetGetMethod()
- Исходный код:
- PropertyInfo.cs
- Исходный код:
- PropertyInfo.cs
- Исходный код:
- PropertyInfo.cs
Возвращает открытый метод доступа get для данного свойства.
public:
System::Reflection::MethodInfo ^ GetGetMethod();
public:
virtual System::Reflection::MethodInfo ^ GetGetMethod();
public System.Reflection.MethodInfo? GetGetMethod ();
public System.Reflection.MethodInfo GetGetMethod ();
member this.GetGetMethod : unit -> System.Reflection.MethodInfo
abstract member GetGetMethod : unit -> System.Reflection.MethodInfo
override this.GetGetMethod : unit -> System.Reflection.MethodInfo
Public Function GetGetMethod () As MethodInfo
Возвращаемое значение
Объект MethodInfo, предоставляющий открытый метод доступа get для этого свойства, или значение null, если метод доступа get не является открытым либо не существует.
Реализации
Комментарии
Это удобный метод, предоставляющий реализацию абстрактного GetGetMethod метода с параметром nonPublic , равным false.
Чтобы использовать GetGetMethod метод , сначала получите класс Type.
TypeИз получите PropertyInfo. В используйте PropertyInfoGetGetMethod метод .