System.reflection

hudon77 Messages postés 127 Date d'inscription vendredi 21 janvier 2005 Statut Membre Dernière intervention 29 mai 2014 - 14 oct. 2008 à 20:27
jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 - 14 oct. 2008 à 21:14
bonjour à tous!

Je cherche a créer une fonction a qui je passe un string représentant le contenu d'une variable.
Et je voudrais qu'elle me renvois le nom de la variable qui correspond
Ce sont des variable public shared contenu dans une classse.

For

Each Mi
As System.Reflection.MemberInfo
In
GetType(cIcones).GetMembers

If Mi.MemberType = Reflection.MemberTypes.Field
Then

'ici j'aimerais récupéré la valeur de la variable

End
If

Next

Nicolas!

1 réponse

jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
14 oct. 2008 à 21:14
Bonsoir,

Quels droles d'idées, pourquoi ne pas utiliser un Dictionary<String, String> plutot qu'une "liste" de variable ??? ce serait tellement plus simple, performant, securisant (Reflection ne peux pas être utilisé si l'on n'est pas en full trust CAS)

Bref :

Type

t = typeof(Foo);
String fieldName = (from field in t.GetFields(BindingFlags.Public | BindingFlags.Static)
                    where field.FieldType == typeof(String)
                    where field.GetValue(null) == "toto"
                    select (String)field.Name
                   ).FirstOrDefault();
Je te laisse traduire en VB, ca me fait des boutons ce langage ;-)

<hr />Cyril - MVP ASP.net - MCPD ASP.net & MCTS SQL - Consultant indépendant
0
Rejoignez-nous