Linq To Xml:是否可以在搜索中添加XElement内联

时间:2011-02-28 11:03:39

标签: linq-to-xml

Linq to Xml的新手,并开始玩它。

我正在进行类似以下的大量操作,我想知道是否有可能在一个声明中:

    Dim childXEl As XElement = _
    <ChildElement></ChildElement>

    Dim results = _
    From parentXEl In xdoc.Descendants.<ParentXElement> 

    For Each xe As XElement In results
        xe.Add(childXEl)
    Next

我怀疑这是可能的,但我很想知道,你可以在搜索查询中添加xml,从而使每个循环不必要吗?

1 个答案:

答案 0 :(得分:1)

Well List(Of T)有一个ForEach方法,你可以做一个动作,你可以做这样的事情:

Sub Main()
    Dim doc As XDocument = _
    <?xml version="1.0"?>
    <root>
        <item>
            <foo>1</foo>
        </item>
        <item>
            <foo>2</foo>
        </item>
    </root>

    doc.Root.<item>.ToList().ForEach(AddressOf Add)
    doc.Save("output.xml")
End Sub

Sub Add(ByVal el As XElement)
    el.Add(<bar>test</bar>)
End Sub