Name
MethodBase
Synopsis
This is an abstract base class representing executable method calls, which
fall into two categories: regular methods and constructors.
GetCurrentMethod()
and
GetMethodFromHandle()
are static methods that return the currently executing method and a
method represented by a
System.RuntimeMethodHandle object, respectively.
The MethodHandle
returns the handle for a specific method instance.
The properties prefixed by Is return boolean
values, allowing inspection of the modifiers of the reflected
method. Only some require explanation:
IsAssembly returns
true if the method is internal, and
IsFamily returns
true for protected methods. If a member of exactly the same name
and signature is hidden by a derived class,
IsHideBySig is true.
IsSpecialName
indicates if this method has a special name, such as a property
accessor, get_PropertyName or
set_PropertyName.
Similarly, the attributes on a given method can be inspected from
the Attributes
property.
GetParameters()
returns the parameters of a method or constructor, and
GetMethodImplementationFlags()
returns the
MethodImplAttributes flags set
on the method.
In addition to introspecting on a method, the MethodBase
also allows for reflective invocation of a method, using the Invoke()
method. Note that Invoke() requires both the object
instance against which to invoke the method (or null
if the method is declared static), as well as an array
of object references containing the arguments to the method, in their proper ...