【发布时间】:2010-01-13 03:45:32
【问题描述】:
我从 XmlReader 中提取了以下节点:
string xml = "<FeatureType xmlns=\"http://www.opengis.net/wfs\" > </FeatureType>"
为了反序列化为预定义的类,我尝试:
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));
}
反序列化时,XmlSerializer 会抛出异常并显示以下消息:
"<FeatureType xmlns='http://www.opengis.net/wfs'> was not expected."
如果我删除命名空间声明,我可以反序列化。无需进一步操作阅读器的输出,我该如何解决这个问题?另外,为什么读取器在提取每个节点时要注入命名空间声明?
TIA。
【问题讨论】:
-
你可以在你的问题中发布 xml 变量的内容吗?
标签: xml string serialization