problema de resolución de tipo en Deserialización

10/06/2004 - 10:30 por Reload | Informe spam
Hola. Tengo una aplicación que carga ensamblados dinámicamente desde mi
programa principal. Estos ensamblados serializan objetos de algunos de sus
tipos contenidos. El problema viene cuando yo quiero deserializar estos
tipos desde mi programa principal, ya que no puedo resolver el tipo al que
pertenecen puesto que provienen de ensamblados cargados en tiempo de
ejecución sobre mi dominio por defecto.

Además, he intentado deserializar dentro del propio ensamblado que serializó
el objeto y tampoco me encuentra el tipo (a sabiendas que el tipo está
definido en el propio ensamblado).

Alguna idea de cómo podría resolver esto?

Saludos,
 

Leer las respuestas

#1 Reload
10/06/2004 - 11:27 | Informe spam
Bien, me respondo a mí mismo por si a alguien le interesa. He tenido que
agregar al AppDomain el directorio donde se encuentran los ensamblados que
cargo dinámicamente para que pueda deserializar el objeto sobre el tipo de
dato correspondiente (no sé porqué ha de hacerse así puesto que ya tengo
cargado en mi AppDomain el ensamblado que contiene el tipo de dato a
deserializar). Con el handle obtenido, le hago un GetType().InvokeMethod
para ejecutar el método que yo quería. No he podido castear directamente al
tipo de dato que representa el objeto. He tenido que hacerlo mediante el
tipo primitivo object.

Saludos,

"Reload" escribió en el mensaje
news:
Hola. Tengo una aplicación que carga ensamblados dinámicamente desde mi
programa principal. Estos ensamblados serializan objetos de algunos de sus
tipos contenidos. El problema viene cuando yo quiero deserializar estos
tipos desde mi programa principal, ya que no puedo resolver el tipo al que
pertenecen puesto que provienen de ensamblados cargados en tiempo de
ejecución sobre mi dominio por defecto.

Además, he intentado deserializar dentro del propio ensamblado que


serializó
el objeto y tampoco me encuentra el tipo (a sabiendas que el tipo está
definido en el propio ensamblado).

Alguna idea de cómo podría resolver esto?

Saludos,


Preguntas similares