C# C在从XMLfile获取值时在面板内动态创建标签
XML文件XMLFile1.XMLC# C在从XMLfile获取值时在面板内动态创建标签,c#,xml,C#,Xml,XML文件XMLFile1.XML <website> <productlist> <a>dynnaplatka</a> <b>pamet</b> <c>procesor</c> </productlist> </website> 问题是,当我运行解决方案时,代码添加了1个带有文本dynnaplatkapamet
<website>
<productlist>
<a>dynnaplatka</a>
<b>pamet</b>
<c>procesor</c>
</productlist>
</website>
问题是,当我运行解决方案时,代码添加了1个带有文本dynnaplatkapametprocesor的标签,而不是3个带有文本dynnaplatka、pamet、procesor的标签
我看了我的代码一个小时,我看不出问题来解决它
protected void Page_Load(object sender, EventArgs e)
{
XmlDocument doc = new XmlDocument();
doc.Load(Server.MapPath("~/XMLFile1.xml"));
XmlNodeList nodelist = doc.SelectNodes("website/productlist");
foreach (XmlNode node in nodelist)
{
Panel1.Controls.Add(new LiteralControl("<br />"));
Label lbl = new Label();
lbl.Text = node.InnerText;
lbl.CssClass = "Labels";
lbl.ID = node.InnerText;
Panel1.Controls.Add(lbl);
}
}
此方法doc.SelectNodeswebsite/productlist;选择节点,而不是其子节点
要选择所有子节点,需要使用以下XPath表达式:doc.SelectNodeswebsite/productlist/*