Bonjour à tous,

Je dois mettre en placer un système d'instanciation dynamyque en ne conaissant que le nom (sous forme de chaine de caractère) de l'objet que je dois instancier. Jusque là tout va bien.

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
foreach (Type type in monAssembly.GetTypes())
                {
                    if (type.Name == resource.GetString(c1.Source))
                    {
                        a1 = (automate)Activator.CreateInstance(type);
                    }
                }
Dans le code précédent je crée donc un objet a1 en le castant avec le type automate.

la valeur type est le type d'une des classes fille de cette classe automate

Mon objet est donc du même type que la classe fille.

Ensuite je veux faire appel à une méthode générique de la classe mère automate

Code : Sélectionner tout - Visualiser dans une fenêtre à part
a1 = automate.Load<automate>(cheminl5x.Text);
Ici j'ai une erreur. le projet est généré mais lors de l'exécution de ce code j'ai une erreur.

J'aimerai pouvoir appeler cette méthode avec la variable de type de la classe fille

Est ce que c'est possible et si oui comment je peu faire ??
J'ai fais des recherches mais rien ne fonctionne
car je ne peut pas savoir que le type utilisé sera toujours le même, il faut que je puisse instancier l'objet et charger les données indépendemment du type de l'objet.

Merci d'avance pour vos réponses en espérant que ce soit assez clair