我需要
在单独的列表中
<steps id="0" last="3">
<step id="1" type="ValidateStep">
<parameterizedString><text>Enter User Name</text></parameterizedString>
<parameterizedString><text>stack@gmail.com</text></parameterizedString>
<description>
</description>
</step>
<step id="2" type="ValidateStep">
<parameterizedString><text>EnterPassword</text> </parameterizedString>
<parameterizedString><text>abcd*</text></parameterizedString>
<description></description></step>
<step id="3" type="ActionStep">
<parameterizedString>
<text>Click on Login Button</text>
</parameterizedString><parameterizedString />
<description />
</step>
</steps>
XDocument doc = XDocument.Parse(xmlSteps);
var values = (from f in doc.Elements().Descendants()
select f.Attribute("text").Value).ToArray();
答案 0 :(得分:1)
假设你想要第1步&amp;仅限2(否则删除带注释的行),使用类似于此的内容:
var values = doc.Descendants("step")
.Where(step => new[] { "1", "2" }.Contains(step.Attribute("id").Value)) //only step 1 & 2
.Select(step => step.Descendants("text").Select(text => text.Value).ToList());