我的XML采用以下格式。
<Test1>
<Test>
<Name>A</Name>
<Image>~/FltImages/DL.gif</Image>
<Fare>1243.8</Fare>
<OutbondInfo>
<Duration>0900</Duration>
<Type>Non-Stop</Type>
<Sector>
<Name>A</Name>
<Image>~/FltImages/DL.gif</Image>
<No>4410</No>
<AirCraftNo>744</AirCraftNo>
<CabinClass Name="ECONOMY">M</CabinClass>
</Sector>
</OutbondInfo>
<InboundInfo>
<Duration>0805</Duration>
<Type>Non-Stop</Type>
<Sector>
<Name>A</Name>
<Image>~/FltImages/DL.gif</Image>
<No>4410</No>
<AirCraftNo>744</AirCraftNo>
<CabinClass Name="ECONOMY">M</CabinClass>
</Sector>
</InboundInfo>
<Type>IT</Type>
</Test>
</Test1>
我正在阅读如下详细信息,但我的代码没有读取OutbondInfo和InbondInfo下的代码。如何读取这些标签下的数据并保存在同一个DataSet中,如下面的代码所示。
XmlNode xNode;
xNode = fc.gettDetail(TextBox1.Text);
DataSet ds = new DataSet();
if (xNode != null)
{
XmlTextReader xmlTextReader = new XmlTextReader(xNode.OuterXml, XmlNodeType.Element, null);
ds.ReadXml(xmlTextReader);
GridView1.DataSource = ds;
GridView1.DataBind();
}
请帮助!!
由于
答案 0 :(得分:1)
您的DataSet正在返回多个表。您只能选择一个表绑定到gridview。以下是DataSet的外观:
解决方案:对于每个表使用单独的GridView。绑定GridViews如下:
GridView1.DataSource = ds.Tables["OutbondInfo"];
GridView1.DataBind();
//Add another GridView "GridView2" in markup
GridView2.DataSource = ds.Tables["InboundInfo"];
GridView2.DataBind();
希望它有所帮助!