2009-10-02 10 views
0

J'ai besoin d'un moyen pour analyser une chaîne en une valeur entière dans C#. Le problème est que l'utilisateur choisit une chaîne d'une liste déroulante contenant des chaînes telles que "AAAAA" ou "5". Cela signifie que seulement au moment de l'exécution on sait si le paramètre est une chaîne réelle ou une chaîne qui peut être analysée en un entier. J'ai essayé autour avec la réflexion et ai l'objet Parameter approprié.état à la compilation inconnu

ParameterInfo p = ps[i]; 
Type t = p.ParameterType; 

Je ne sais pas comment continuer à partir de là ou si c'est même possible. Je ne peux pas utiliser sinon statements parce que le programme est censé charger d'autres interfaces avec de nouveaux paramètres. Donc, je pourrais gérer les paramètres par défaut avec if statmentes mais quand une nouvelle interface avec de nouveaux Methodinfos est chargée, cela ne fonctionne plus.

Répondre

2

Je ne suis pas un usre qui a compris toutes vos contraintes. Cependant, vous pouvez analyser la chaîne en utilisant Int32.TryParse dans le cas où la chaîne cible n'est pas nécessairement valide.

1

Int32.TryParse whould vous aider avec cette

0

Pour analyser une chaîne en un entier, vous pouvez utiliser Convert.ToInt32(string_var), ou l'une des autres méthodes de conversion. Voir here pour plus.