I extrait le noeud suivant de XmlReader:XmlSerializer s'écraser sur le document Xml
string xml = "<FeatureType xmlns=\"http://www.opengis.net/wfs\" > </FeatureType>"
Pour désérialiser à une classe prédéfinie, j'ai essayé:
using (StringReader elementReader = new StringReader("<?xml version='1.0'?>" + xml))
{
// TODO: Can data contract serializer be used?
XmlSerializer deserializer = serializers[typeof(FeatureType)];
featureTypes.Add((FeatureType)deserializer.Deserialize(elementReader));
}
Sur désérialisation, XmlSerializer lance une exception le message suivant:
"<FeatureType xmlns='http://www.opengis.net/wfs'> was not expected."
Si je supprime la déclaration d'espace de noms, je peux sérialiser. Sans avoir à manipuler davantage avec la sortie du lecteur, comment puis-je résoudre ce problème? En outre, pourquoi le lecteur injecte-t-il la déclaration d'espace de noms, lorsqu'il extrait chaque noeud?
TIA.
Pouvez-vous publier le contenu de la variable XML dans votre question? –