我的应用程序中的Web服务有这个xml数据,其输出类似于:
<?xml version="1.0" encoding="UTF-8"?>
-<NewDataSet>
-<Table>
<RecipeID>12923</RecipeID>
<RecipeNumber>R-000023</RecipeNumber>
<Name>Orange Pineapple Honey chicken (2)</Name>
<Servings>4</Servings>
<PrepTime>20</PrepTime>
<CookTime>90</CookTime>
<MarinateTime>0</MarinateTime>
<StandTime>0</StandTime>
<ChillTime>0</ChillTime>
<BrewTime>0</BrewTime>
<FreezeTime>0</FreezeTime>
<TotalTime>110</TotalTime>
<MethodHeader>Makes 4 servings</MethodHeader>
<SubTitle>Tasty variation of the delicious honey chicken with an orange pineapple sauce.
</Table>
-<Table1>
<Description>3 lbs. skinless boneless chicken breast halves</Description>
</Table1>
-<Table1>
<Description>2 Tbsp. salt</Description>
</Table1>
-<Table2>
<Note>Preheat oven to 350°F. Thoroughly wash chicken breasts and add salt.</Note>
</Table2>
-<Table2>
<Note>Place the salted chicken breasts in a large baking dish and set them aside. To make the sauce, combine the honey and the pineapple juice.</Note>
</table2>
</NewDataSet>
因此,我使用ReadXml将其放入数据集中,并使用在DataList中显示信息
在我的母版页的源代码内部<%#Eval("RecipeID")%>
,依此类推。
问题在于我到达<table1>
。我无法获得多个节点(鸡和盐)。我该如何获取这两个节点。所以我可以继续<table2>
我在哪里做同样的事情并得到两个<note>
节点
答案 0 :(得分:0)
您无法在单个DataSet中创建两个具有相同名称的DataTable。您可以通过执行以下操作验证:
var ds = new DataSet();
ds.Tables.Add(new DataTable("Table1"));
ds.Tables.Add(new DataTable("Table1"));
我认为您需要将<Table1>
中的两行折叠到一个表中。那么你就不会遇到任何问题。
答案 1 :(得分:0)
我刚刚使用.selectNodes并在循环中获取每个项目