MethodBase.IsPublic Propriété
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Obtient une valeur indiquant s'il s'agit d'une méthode publique.
public:
property bool IsPublic { bool get(); };
public bool IsPublic { get; }
member this.IsPublic : bool
Public ReadOnly Property IsPublic As Boolean
Valeur de propriété
true
si cette méthode est publique ; sinon, false
.
Implémente
Exemples
L’exemple suivant utilise la IsPublic propriété pour afficher un message qui indique si la méthode spécifiée est publique.
int main()
{
Console::WriteLine( "\nReflection.MethodBase" );
//Get the MethodBase of a method.
//Get the type
Type^ MyType = Type::GetType( "System.MulticastDelegate" );
//Get and display the method
MethodBase^ Mymethodbase = MyType->GetMethod( "RemoveImpl", static_cast<BindingFlags>(BindingFlags::NonPublic | BindingFlags::Instance) );
Console::Write( "\nMymethodbase = {0}", Mymethodbase );
bool Myispublic = Mymethodbase->IsPublic;
if ( Myispublic )
Console::Write( "\nMymethodbase is a public method" );
else
Console::Write( "\nMymethodbase is not a public method" );
return 0;
}
/*
Produces the following output
Reflection.MethodBase
Mymethodbase = System.Delegate RemoveImpl (System.Delegate)
Mymethodbase is not a public method
*/
class methodbase
{
public static int Main(string[] args)
{
Console.WriteLine("\nReflection.MethodBase");
//Get the MethodBase of a method.
//Get the type
Type MyType = Type.GetType("System.MulticastDelegate");
//Get and display the method
MethodBase Mymethodbase =
MyType.GetMethod("RemoveImpl",BindingFlags.NonPublic);
Console.Write("\nMymethodbase = " + Mymethodbase);
bool Myispublic = Mymethodbase.IsPublic;
if (Myispublic)
Console.Write ("\nMymethodbase is a public method");
else
Console.Write ("\nMymethodbase is not a public method");
return 0;
}
}
/*
Produces the following output
Reflection.MethodBase
Mymethodbase = System.Delegate RemoveImpl (System.Delegate)
Mymethodbase is not a public method
*/
Class methodbase1
Public Shared Function Main() As Integer
Console.WriteLine(ControlChars.Cr + "Reflection.MethodBase")
'Get the MethodBase of a method.
'Get the type
Dim MyType As Type = Type.GetType("System.MulticastDelegate")
'Get and display the method
Dim Mymethodbase As MethodBase = _
MyType.GetMethod("RemoveImpl", BindingFlags.NonPublic)
Console.Write(ControlChars.Cr _
+ "Mymethodbase = " + Mymethodbase.ToString())
Dim Myispublic As Boolean = Mymethodbase.IsPublic
If Myispublic Then
Console.Write(ControlChars.Cr _
+ "Mymethodbase is a public method")
Else
Console.Write(ControlChars.Cr _
+ "Mymethodbase is not a public method")
End If
Return 0
End Function
End Class
' Produces the following output
'
' Reflection.MethodBase
' Mymethodbase = System.Delegate RemoveImpl (System.Delegate)
' Mymethodbase is not a public method
Remarques
Pour récupérer le MethodBase , commencez par récupérer le type. À partir du type, récupérez la méthode. À partir de la méthode, récupérez MethodBase
. Si le MethodBase
constructeur ou n’est pas public, il est protégé et ne peut pas être facilement accessible. Pour accéder à une méthode non publique, définissez le BindingFlags masque sur NonPublic
dans GetMethod
.