我正在尝试使用xml阅读器读取xml数据,xml文件包含很多前缀,所以我在XmlNamespaceManager
中包含了名称空间,示例代码
using (XmlReader reader = new XmlTextReader(fileName))
{
XmlNamespaceManager nsmanager = new XmlNamespaceManager(reader.NameTable);
nsmanager.AddNamespace("s", "http://www.google.com/shopping/api/schemas/2010");
while (reader.Read())
{
switch (reader.Name)
{
case "s:name":
Console.WriteLine(reader.Name);
break;
case "s:condition":
Console.WriteLine(reader.Name);
break;
}
}
}
它输出空行,这是包含命名空间的正确方法吗?
在vb.net中,我将名称空间导入为
Imports <xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
Imports <xmlns:msxsl="urn:schemas-microsoft-com:xslt">
Imports <xmlns:rh="ReportHub">
Imports <xmlns="http://www.w3.org/2005/Atom">
Imports <xmlns:gd="http://schemas.google.com/g/2005">
Imports <xmlns:openSearch="http://a9.com/-/spec/opensearchrss/1.0/">
Imports <xmlns:s="http://www.google.com/shopping/api/schemas/2010">
答案 0 :(得分:1)
使用reader.ReadElementString
而不是reader.Value