Maison >développement back-end >C++ >Comment puis-je appeler des méthodes privées à l'aide de Reflection en C# ?

Comment puis-je appeler des méthodes privées à l'aide de Reflection en C# ?

Linda Hamilton
Linda Hamiltonoriginal
2025-01-25 05:21:09550parcourir

How Can I Invoke Private Methods Using Reflection in C#?

Utilisation de la réflexion C # Méthode privée

Appelez dynamiquement des méthodes privées, en particulier lorsque le nom de la méthode est basé sur le changement de valeur d'entrée, la technologie réflexe doit être utilisée.

Les méthodes n'obtiennent que des méthodes publiques par défaut, ignorez les méthodes privées. Pour accéder aux méthodes privées, vous devez ajouter

à la fonction GetMethod(). GetMethod() BindingFlags Vous devez combiner et

. Cela comprendra des méthodes non publiques (privées) dans l'instance actuelle.

BindingFlags.NonPublic Le code modifié est le suivant: BindingFlags.Instance

Ce code récupérera avec succès la méthode privée "Draw_" et utilisera le paramètre fourni pour l'appeler.

<code class="language-csharp">MethodInfo dynMethod = this.GetType().GetMethod("Draw_" + itemType, BindingFlags.NonPublic | BindingFlags.Instance);
dynMethod.Invoke(this, new object[] { methodParams });</code>
Plus d'informations sur la réflexion et

, veuillez vous référer aux documents suivants:

BindingFlags Méthodinfo.getMethod Method (BindingFlags)

  • BindingFlags Énumération

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn