Události
Vytváření aplikací a agentů AI
17. 3. 21 - 21. 3. 10
Připojte se k řadě meetupů a vytvořte škálovatelná řešení AI založená na skutečných případech použití s kolegy vývojáři a odborníky.
ZaregistrovatTento prohlížeč se už nepodporuje.
Upgradujte na Microsoft Edge, abyste mohli využívat nejnovější funkce, aktualizace zabezpečení a technickou podporu.
Někdy chcete najít všechny potomky s určitým názvem. Můžete napsat kód pro iteraci všech potomků, ale je jednodušší použít osu Descendants .
Následující příklad ukazuje, jak najít potomky s konkrétním názvem elementu.
XElement root = XElement.Parse(@"<root>
<para>
<r>
<t>Some text </t>
</r>
<n>
<r>
<t>that's broken up into </t>
</r>
</n>
<n>
<r>
<t>multiple segments.</t>
</r>
</n>
</para>
</root>");
IEnumerable<string> textSegs =
from seg in root.Descendants("t")
select (string)seg;
string str = textSegs.Aggregate(new StringBuilder(),
(sb, i) => sb.Append(i),
sp => sp.ToString()
);
Console.WriteLine(str);
Dim root As XElement = _
<root>
<para>
<r>
<t>Some text </t>
</r>
<n>
<r>
<t>that's broken up into </t>
</r>
</n>
<n>
<r>
<t>multiple segments.</t>
</r>
</n>
</para>
</root>
Dim textSegs As IEnumerable(Of String) = _
From seg In root...<t> _
Select seg.Value
Dim str As String = textSegs.Aggregate( _
New StringBuilder, _
Function(sb, i) sb.Append(i), _
Function(sb) sb.ToString)
Console.WriteLine(str)
Tento příklad vytvoří následující výstup:
Some text that's broken up into multiple segments.
Následující příklad ukazuje stejný dotaz na XML, který je v oboru názvů. Další informace najdete v tématu Přehled oborů názvů.
XElement root = XElement.Parse(@"<root xmlns='http://www.adatum.com'>
<para>
<r>
<t>Some text </t>
</r>
<n>
<r>
<t>that's broken up into </t>
</r>
</n>
<n>
<r>
<t>multiple segments.</t>
</r>
</n>
</para>
</root>");
XNamespace ad = "http://www.adatum.com";
IEnumerable<string> textSegs =
from seg in root.Descendants(ad + "t")
select (string)seg;
string str = textSegs.Aggregate(new StringBuilder(),
(sb, i) => sb.Append(i),
sp => sp.ToString()
);
Console.WriteLine(str);
Imports <xmlns='http://www.adatum.com'>
Module Module1
Sub Main()
Dim root As XElement = _
<root>
<para>
<r>
<t>Some text </t>
</r>
<n>
<r>
<t>that's broken up into </t>
</r>
</n>
<n>
<r>
<t>multiple segments.</t>
</r>
</n>
</para>
</root>
Dim textSegs As IEnumerable(Of String) = _
From seg In root...<t> _
Select seg.Value
Dim str As String = textSegs.Aggregate( _
New StringBuilder, _
Function(sb, i) sb.Append(i), _
Function(sb) sb.ToString)
Console.WriteLine(str)
End Sub
End Module
Tento příklad vytvoří následující výstup:
Some text that's broken up into multiple segments.
Zpětná vazba k produktu .NET
.NET je open source projekt. Vyberte odkaz pro poskytnutí zpětné vazby:
Události
Vytváření aplikací a agentů AI
17. 3. 21 - 21. 3. 10
Připojte se k řadě meetupů a vytvořte škálovatelná řešení AI založená na skutečných případech použití s kolegy vývojáři a odborníky.
ZaregistrovatDokumentace
Dotazování XDocument vs. dotazování XElement – LINQ to XML - .NET
Zapište mírně odlišné dotazy na dokumenty XML načtené XDocument.Load a XElement.Load.
Jak najít element s konkrétním podřízeným elementem – LINQ to XML - .NET
Vyhledání elementu, jehož podřízený prvek má konkrétní hodnotu
Jak najít element s konkrétním atributem – LINQ to XML - .NET
Zjistěte, jak najít prvek, jehož atribut má konkrétní hodnotu.