-->

为什么我的XML阅读器读取所有其他元素?(Why is my XML reader reading

2019-06-25 08:35发布

我建立的一个显示4列和4行一个非常简单的表格。 当执行下面的代码它显示在.xml文件所有其他元素。 它不按表行歧视。 它没有任何问题通过读取和我已经运行XML验证所以它不是一个语法问题。

public partial class lblXmlOutput : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        XmlReaderSettings settings = new XmlReaderSettings();
        settings.ConformanceLevel = ConformanceLevel.Document;
        settings.IgnoreWhitespace = true;
        settings.IgnoreComments = true;

        XmlReader reader = XmlReader.Create(Server.MapPath("Part2XMLex.xml"), settings);

        string result = "";

        while (reader.Read())
        {
            if (reader.IsStartElement("td"))
                result += reader.ReadElementContentAsString();

            txtOutput.Text = result;
        }
   }
}

Answer 1:

因为两个.Read().ReadElementContentAsString()无参数过载)移动至读取器到下一个节点。

更改while条件:

while (!reader.EOF)

然后加:

else reader.Read();


文章来源: Why is my XML reader reading every other element?