Bonjour à tous,

Voilà, j'ai un petit problème. Je vais essayer de faire simple.

J'ai 3 types :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
 
Type typeDg = Type.GetType(classeDg);
Type typeDgIn = Type.GetType(classeDg.Replace("Dg", "In"));
Type typeDgOut = Type.GetType(classeDg.Replace("Dg", "In"));
Ensuite, j'ai 2 objets que j'ai défini comme cela :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
object msgIn = new object();
object msgOut = new object();
msgIn = typeDialogue.GetProperty("MessageIn").GetValue(dialogue, null); // dialogue est passé en param de ma fonction le pb n'est pas là
msgOut = typeDialogue.GetProperty("MessageOut").GetValue(dialogue, null);
Puis, je crée une instance de mon objet et je lui affecte des valeurs
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
object dgIn = Activator.CreateInstance(typeDgIn);
IfGetValues(desParams, dgIn, typeDgIn.ToString());
Tout cela fonctionne correctement.

Mais c'est là où je galère.
Il faut ensuite que j'appelle une fonction qui prend en paramètre des propriétés de msgIn (exemple msgIn.Header et msgIn.Body)
Mais vu que je travaille avec des GetType.... je n'ai pas accès directement au contenu de msgIn.
Donc, j'ai fait comme ça :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
(Header)typeDgIn.GetProperty("Header").GetValue(msgIn, null)
pour remplacer
msgIn.Header (car je sais que y'a un Header dedans le debugger me l'affiche )
Mais dans ma fonction, j'ai un message d'erreur : La référence d'objet n'est pas définie à une instance d'un objet.

Est-ce que quelqu'un aurait une petite idée ou de la doc pour savoir comment je pourrais faire pour récupérer le contenu de msgIn et pour affecter des valeurs dedans?

Merci d'avance

JaCaDi