sourismerdique
Messages postés19Date d'inscriptiondimanche 4 décembre 2005StatutMembreDernière intervention21 janvier 2010
-
5 janv. 2008 à 23:24
sourismerdique
Messages postés19Date d'inscriptiondimanche 4 décembre 2005StatutMembreDernière intervention21 janvier 2010
-
6 janv. 2008 à 13:05
Bonjour, je m'adresse à vous car j'ai un probleme de conversion de type, j'ai tenté de m'aider avec tout les bouts de code similaires trouvés sur la toile mais je ne m'en sort pas.
Mon but est simplement l'importation d'une classe provenant d'une DLL, pour cela j'ai défini une interface:
using System;
using System.Collections.Generic;
using System.Text;
PluginInstance = (IO_PluginInterface) Activator.CreateInstance(ElementType); me donne sistématiquement l'érreur suivante:
System.invalidCastExeption : Impossible d'éffectuer un cast d'un objet de type 'INTERFACE.IOPluginClass' en type 'INTERFACE.PluginInterface'.
Je ne comprends pas, j'ai trouvé quelqu'un qui avait le meme probleme avec un code très similaire, il c'est rendu compte que ses namespace n'étaient pas partout les memes, ce n'est pas mon cas.
http://www.developpez.net/forums/showthread.php?t=279373
cs_coq
Messages postés6349Date d'inscriptionsamedi 1 juin 2002StatutMembreDernière intervention 2 août 2014101 6 janv. 2008 à 12:51
Si tu définit l'interface dans 2 assembly différents, il s'agira de 2 types différents et non pas d'un seul.
En clair, l'interface IO_PluginInterface implémentée par ta classe IOPluginClass n'est pas réellement la même que l'interface IO_PluginInterface en laquelle tu tentes le cast sur le retour de Activator.CreateInstance.