125 votes

Éviter l'ambiguïté d'un match d'exception

Je suis l'invocation d'une méthode statique Analyser sur un type via la réflexion car je ne connais pas le type de l'objet au moment de la compilation (je sais, cependant, il a un Parse méthode, en prenant une chaîne de caractères).

Cependant, je suis l'ambiguïté d'un match d'exception, sans doute parce qu'il y a beaucoup de surcharge Analyser les méthodes de chaque de prendre un objet unique (string, int, double, etc.).

Comment puis-je être plus précis dans mon invocation de méthode pour m'assurer de prendre la bonne méthode (Parse(string s)) et que l'exception n'est levée.

Mon code ressemble à ceci:

Type returnType = p.PropertyType;
object value = returnType.GetMethod("Parse").Invoke(null, new string[] { "1" });

207voto

Benjamin Podszun Points 5120

L'utilisation de cette surcharge et l'utilisation

returnType.GetMethod("Parse", new [] {typeof(string)})

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X