2012-03-10 4 views
2

Je rencontre des problèmes pour lancer le type B après la désérialisation de XML.Désérialisation XML (problèmes)

Par exemple.

class Base 
class A: Base 
class B: A 

Je désérialiser à A, mais ne peut pas lancer B.

Est-il possible de désérialiser à A puis à B jeté?

Répondre

2

Vous dites que vous avez de la difficulté à lancer vers le type de base, mais B n'est pas le type de base: c'est un sous-type. Si cette distribution échoue, cela signifie que la désérialisation a renvoyé un A mais pas un B. pour que le sérialiseur retourne un B, il doit être évident dans les données qu'il est un B, donc fondamentalement: vous devez avoir sérialisé un B.