SORU
22 Mart 2009, Pazar


SERİ XML okumak

Bu XML dosyası var

<root>
    <level1 name="A">
        <level2 name="A1" />
        <level2 name="A2" />
    </level1>
    <level1 name="B">
        <level2 name="B1" />
        <level2 name="B2" />
    </level1>
    <level1 name="C" />
</root>

Biri bana verebilir C# kodu SERİ, bu sonucu yazdırmak için basit bir yol kullanarak
(Eğer seviye 2 bir düğüm ise ekstra boşluğa dikkat edin)

A
  A1
  A2
B
  B1
  B2
C

Şu anda bu kod var

XDocument xdoc = XDocument.Load("data.xml"));
var lv1s = from lv1 in xdoc.Descendants("level1")
           select lv1.Attribute("name").Value;

foreach (var lv1 in lv1s)
{
    result.AppendLine(lv1);

    var lv2s = from lv2 in xdoc...???
}

CEVAP
22 Mart 2009, Pazar


Bu deneyin.

//Load xml
XDocument xdoc = XDocument.Load("data.xml");

//Run query
var lv1s = from lv1 in xdoc.Descendants("level1")
           select new { 
               Header = lv1.Attribute("name").Value,
               Children = lv1.Descendants("level2")
           };

//Loop through results
foreach (var lv1 in lv1s){
        result.AppendLine(lv1.Header);
        foreach(var lv2 in lv1.Children)
             result.AppendLine("     "   lv2.Attribute("name").Value);
}

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • Boiler Room

    Boiler Room

    10 Mayıs 2012
  • Crossover

    Crossover

    18 HAZİRAN 2007
  • Toddler Fun Learning

    Toddler Fun

    8 ŞUBAT 2013