XML tähistab laienevat märgistuskeelt ja on laialdaselt levinud andmeformaat, mida kasutatakse teabe struktureeritud salvestamiseks, olgu need siis aadressiraamatuded, ilmaprognooside andmed või muud andmekogumid. Selles juhendis näitan sulle, kuidas saaksid LINQ (Language Integrated Query) abil XML-faile C#-s tõhusalt töödelda. Me käsitleme samm-sammult XML-andmete töötlemist, sorteerimist ja filtreerimist.

Olulisemad järeldused

  • XML on ideaalne andmete struktureeritud salvestamiseks.
  • LINQ võimaldab efektiivset XML-andmete pärimist ja manipuleerimist.
  • Sa saad LINQ abil filtreerida spetsiifiliste kriteeriumite alusel ja tulemusi sorteerida.
  • XML ja LINQ kombinatsioon parandab andmete loetavust ja käsitlemist C#-s.

XML-andmete lugemine ja ettevalmistamine

XML-andmetega töötamiseks vajad esmalt vastavaid nimede ruume. Need on oluline XML-andmete lugemise ja töötlemise jaoks.

Esialgu lisame vajalikud nimede ruumid:

using System.Xml;
using System.Linq;
using System.Collections.Generic;
Tõhusad LINQ-päringud XML-andmete jaoks C#-s

Keskne klass, mida me kasutame, on XDocument. See esindab XML-dokumenti, millega saame oma XML-andmeid lihtsalt töödelda. Meie näites loome selle klassi instantsi, et initsialiseerida XML-dokument.

XDocumenti instantsimine

Järgmises etapis lood instantsi XDocument, mis loeb sinu XML-andmed. Me nimetame seda instantsi plzxdoc.

Parse-käsku kasutades täidad objekti oma XML-stringiga. See samm on oluline, kuna see võimaldab sul salvestada ja manipuleerida XML-andmeid oma muutuja plzxdoc sees.

LINQ-päringud XML-andmete puhul

Pärast selle XML-dokumendi laadimist toimub oluline päring. LINQ võimaldab sul hõlpsasti teatud andmeid välja filtreerida. Meie näites kasutame LINQ to XML, et filtreerida välja kõik postiindeksid.

LINQ-päringu ettevalmistamine

See päring käib läbi kõik XML-dokumendi elemendid, mis esindavad postiindeksit, ja filtreerib need linna "Berliin" järgi. Tulemuseks saad ainult need postiindeksid, mis vastavad sellele tingimusele.

Tulemuste sorteerimine

LINQ abil saad samuti filtreeritud tulemusi sorteerida.

Tõhusad LINQ-päringud XML-andmete jaoks C#-is

Siin sorteeritaksepostiindeks kahanevas järjekorras, nii et kõrgemad postiindeksid kuvatakse esimesena.

Tulemuste väljund

Nüüd, kui sul on filtreeritud ja sorteeritud postiindeksid, on aeg need välja printida konsoolile või kasutajaliidesesse.

ForEach-tsükkel väljundi jaoks

Selle tsükli abil pääsed ligi linnaosa ja postiindeksi väärtustele ning kuvavad need konsoolile vormindatult.

Kokkuvõte – LINQ-programmeerimine XML-andmete puhul C-s

Selles juhendis õppisid, kuidas lugeda, filtreerida ja väljundada XML-andmeid C#-s kasutades LINQ-d. Alguses õppisid XML ja LINQ põhialuseid ning kaasasid vastavad nimede ruumid. Seejärel lõid XDocumenti instantsi ja kasutasite LINQ-päringut andmete töötlemiseks. Lõpuks sorteerisid filtreeritud andmed ja prindisite need konsoolile.

Korduma kippuvad küsimused

Mis on XML?XML tähistab laienevat märgistuskeelt ja seda kasutatakse andmete struktureeritud salvestamiseks.

Mis tähendab LINQ?LINQ on päringute integreerimise keel.NET-is, mis võimaldab andmeid deklaraatiivselt pärida ja manipuleerida.

Kuidas filtreerida XML-andmeid LINQ abil?Sa saad XML-andmeid filtreerida LINQ-päringu abil, määrates tingimused soovitud elementide ja atribuutide jaoks, nt where (string)plz.Element("Ort") == "Berliin".

Kuidas sorteerida tulemusi LINQ abil?Tulemusi saab sorteerida OrderBy- või OrderByDescending-meetodiga, määrates soovitud omadused, mille alusel sorteerida.