Je souhaite utiliser la réflexion pour définir certains champs en fonction des données d'un fichier. Les informations que je peux avoir sont TypeName, TypeValue et FieldName.Utilisation de la réflexion pour définir la valeur d'un Int32
Bien que ce soit trivial sur les classes (Activator.CreateInstance et PropertyInfo.SetValue), je suis un peu stupéfait quand il s'agit de types de valeur comme Int32 qui n'a pas de propriétés. Je vois que IsValueType est vrai sur ces types, mais comme mon TypeValue est une chaîne (c.-à-d. String TypeValue = "400"), je ne sais pas comment l'assigner.
Dois-je utiliser GetMethods()
pour vérifier s'il existe une méthode .Parse? Est-ce quelque chose pour un TypeConverter
? Je sais que je pourrais juste coder en dur certains types de valeurs communs (il n'y en a pas beaucoup de toute façon) et avoir une grosse instruction switch(), mais je me demande s'il y a quelque chose qui fait automagiquement une conversion "Convertir String en T" ?
Il fait, TypeDescriptor classe est la magie que je cherchais, merci! –