Comment utiliser la Réflexion pour Invoquer une Méthode Surchargée dans .NET
Est-il possible d'Appeler une méthode surchargée à l'aide de réflexion .NET (2.0). J'ai une application dynamique qui instancie les classes qui ont été dérivées à partir d'une classe de base commune. Pour des raisons de compatibilité, cette classe de base contient 2 les méthodes de même nom, l'un avec des paramètres, et l'autre sans. J'ai besoin d'appeler la méthode sans paramètre via la méthode Invoke. Maintenant, tout ce que j'obtiens une erreur me disant que je suis en train d'appeler un ambigu de la méthode.
Oui, je pourrait juste lancer l'objet comme une instance de ma classe de base et l'appel à la méthode dont j'ai besoin. Finalement que sera arriver, mais pour l'instant, interne complications ne le permettra pas.
Toute aide serait super! Merci.
Vous devez vous connecter pour publier un commentaire.
Vous devez spécifier la méthode que vous voulez:
Oui. Lorsque vous appelez la méthode passer les paramètres qui correspondent à la surcharge de travail que vous voulez.
Par exemple:
Si vous faites cela, l'inverse(c'est à dire en trouvant le MemberInfo et l'appel d'Invoke) faire attention à ce que vous obtenez le droit d'un paramètre sans surcharge pourrait être le premier trouvé.
Utiliser le GetMethod surcharge qui prend un Système.Type[], et de passer à un Type vide[];