如何在 C# 中执行此操作
本文关键字:执行 操作 | 更新日期: 2023-09-27 18:31:32
以下单元测试通过 VB.Net
<Test()> _
Public Sub VB_XMLLiteral_SyntaxRocks_Test()
Dim XML = <Doc>
<Level1>
<Item id="1"/>
<Item id="2"/>
</Level1>
<Level1>
<Item id="3"/>
<Item id="4"/>
</Level1>
</Doc>
Assert.AreEqual(4, XML.<Level1>.<Item>.Count)
End Sub
如何在 C# 中断言同样的事情?
澄清一下,我想知道如何表达...
XML.<Level1>.<Item>
。在 C# 中
Assert.AreEqual(4, XML.Elements("Level1").Elements("Item").Count());
当然,XML
需要是一个XElement
(这也是VB文字产生的)
使用 LINQ to XML:
var XML = new XElement("Doc",
new XElement("Level1",
new XElement("Item",
new XAttribute("Id", 1)),
new XElement("Item",
new XAttribute("Id", 2))),
new XElement("Level1",
new XElement("Item",
new XAttribute("Id", 3)),
new XElement("Item",
new XAttribute("Id", 4))));
Assert.AreEqual(4,
(from element in XML.Elements("Level1").Elements("Item")
select element).Count());