PropertyInfo.GetSetMethod Metoda
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Zwraca element reprezentujący metodę MethodInfoset
dostępu dla tej właściwości.
Przeciążenia
GetSetMethod(Boolean) |
Po przesłonięciu w klasie pochodnej metoda zwraca metodę |
GetSetMethod() |
Zwraca publiczny |
GetSetMethod(Boolean)
- Źródło:
- PropertyInfo.cs
- Źródło:
- PropertyInfo.cs
- Źródło:
- PropertyInfo.cs
Po przesłonięciu w klasie pochodnej metoda zwraca metodę set
dostępu dla tej właściwości.
public:
abstract System::Reflection::MethodInfo ^ GetSetMethod(bool nonPublic);
public abstract System.Reflection.MethodInfo? GetSetMethod (bool nonPublic);
public abstract System.Reflection.MethodInfo GetSetMethod (bool nonPublic);
abstract member GetSetMethod : bool -> System.Reflection.MethodInfo
Public MustOverride Function GetSetMethod (nonPublic As Boolean) As MethodInfo
Parametry
- nonPublic
- Boolean
Wskazuje, czy akcesor powinien zostać zwrócony, jeśli nie jest publiczny. true
w przypadku zwrócenia niepubliczonego dostępu; w przeciwnym razie , false
.
Zwraca
Metoda tej właściwości Set
lub null
, jak pokazano w poniższej tabeli.
Wartość | Warunek |
---|---|
Metoda Set dla tej właściwości.
| Akcesorium set jest publiczne, LUB nonPublic jest true i set akcesorium jest niepublika.
|
null | nonPublic to true , ale właściwość jest tylko do odczytu, LUB nonPublic jest false i set akcesor jest niepublika, LUB nie ma set dostępu.
|
Implementuje
Wyjątki
Żądana metoda jest niepubliczna, a obiekt wywołujący nie musi ReflectionPermission odzwierciedlać tej metody niepubliczonej.
Przykłady
Poniższy przykład przedstawia metodę set
dostępu dla określonej właściwości.
using namespace System;
using namespace System::Reflection;
// Define a property.
public ref class Myproperty
{
private:
String^ caption;
public:
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.Text.StringBuilder" );
PropertyInfo^ Mypropertyinfob = MyTypeb->GetProperty( "Length" );
// Get and display the GetSetMethod method for each property.
MethodInfo^ Mygetmethodinfoa = Mypropertyinfoa->GetSetMethod();
Console::Write( "\nSetAccessor for {0} returns a {1}", Mypropertyinfoa->Name, Mygetmethodinfoa->ReturnType );
MethodInfo^ Mygetmethodinfob = Mypropertyinfob->GetSetMethod();
Console::Write( "\nSetAccessor for {0} returns a {1}", Mypropertyinfob->Name, Mygetmethodinfob->ReturnType );
// Display the GetSetMethod without using the MethodInfo.
Console::Write( "\n\n{0}.{1} GetSetMethod - {2}", MyTypea->FullName, Mypropertyinfoa->Name, Mypropertyinfoa->GetSetMethod() );
Console::Write( "\n{0}.{1} GetSetMethod - {2}", MyTypeb->FullName, Mypropertyinfob->Name, Mypropertyinfob->GetSetMethod() );
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.Text.StringBuilder");
PropertyInfo Mypropertyinfob = MyTypeb.GetProperty("Length");
// Get and display the GetSetMethod method for each property.
MethodInfo Mygetmethodinfoa = Mypropertyinfoa.GetSetMethod();
Console.Write ("\nSetAccessor for " + Mypropertyinfoa.Name
+ " returns a " + Mygetmethodinfoa.ReturnType);
MethodInfo Mygetmethodinfob = Mypropertyinfob.GetSetMethod();
Console.Write ("\nSetAccessor for " + Mypropertyinfob.Name
+ " returns a " + Mygetmethodinfob.ReturnType);
// Display the GetSetMethod without using the MethodInfo.
Console.Write ("\n\n" + MyTypea.FullName + "."
+ Mypropertyinfoa.Name + " GetSetMethod - "
+ Mypropertyinfoa.GetSetMethod());
Console.Write ("\n" + MyTypeb.FullName + "."
+ Mypropertyinfob.Name + " GetSetMethod - "
+ Mypropertyinfob.GetSetMethod());
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.Text.StringBuilder")
Dim Mypropertyinfob As PropertyInfo = MyTypeb.GetProperty("Length")
' Get and display the GetSetMethod method for each property.
Dim Mygetmethodinfoa As MethodInfo = Mypropertyinfoa.GetSetMethod()
Console.WriteLine("SetAccessor for " & Mypropertyinfoa.Name & _
" returns a " & Mygetmethodinfoa.ReturnType.ToString())
Dim Mygetmethodinfob As MethodInfo = Mypropertyinfob.GetSetMethod()
Console.WriteLine("SetAccessor for " & Mypropertyinfob.Name & _
" returns a " & Mygetmethodinfob.ReturnType.ToString())
' Display the GetSetMethod without using the MethodInfo.
Console.WriteLine(MyTypea.FullName & "." & Mypropertyinfoa.Name & _
" GetSetMethod - " & Mypropertyinfoa.GetSetMethod().ToString())
Console.WriteLine(MyTypeb.FullName & "." & Mypropertyinfob.Name & _
" GetSetMethod - " & Mypropertyinfob.GetSetMethod().ToString())
Return 0
End Function
End Class
Uwagi
Aby użyć GetSetMethod
metody , najpierw pobierz klasę Type
. W pliku Type
pobierz element PropertyInfo. W pliku PropertyInfo
użyj GetSetMethod
metody .
Dotyczy
GetSetMethod()
- Źródło:
- PropertyInfo.cs
- Źródło:
- PropertyInfo.cs
- Źródło:
- PropertyInfo.cs
Zwraca publiczny set
element dostępu dla tej właściwości.
public:
System::Reflection::MethodInfo ^ GetSetMethod();
public:
virtual System::Reflection::MethodInfo ^ GetSetMethod();
public System.Reflection.MethodInfo? GetSetMethod ();
public System.Reflection.MethodInfo GetSetMethod ();
member this.GetSetMethod : unit -> System.Reflection.MethodInfo
abstract member GetSetMethod : unit -> System.Reflection.MethodInfo
override this.GetSetMethod : unit -> System.Reflection.MethodInfo
Public Function GetSetMethod () As MethodInfo
Zwraca
MethodInfo
Obiekt reprezentujący metodę Set
dla tej właściwości, jeśli set
metoda dostępu jest publiczna lub null
jeśli metoda dostępu nie jest publicznaset
.
Implementuje
Uwagi
Jest to metoda wygody, która zapewnia implementację metody abstrakcyjnej GetSetMethod
z parametrem ustawionym nonPublic
na false
.
Aby użyć GetSetMethod
metody , najpierw pobierz klasę Type
. W pliku Type
pobierz element PropertyInfo. W pliku PropertyInfo
użyj GetSetMethod
metody .