Címkearchívumok: LINQ

A LINQ XML-elemzés

Itt van egy gyors példa néhány elemezhető a LINQ használatával  XML- és kap az édes, édes ott attribútumok.

Itt van az elemezni kívánt XML:

<?XML-verzió = "1.0" kódolás = "utf-8" ?>
<DeafultConfigurationSets>
  <PageLayouts>

    <PageLayout name = "xyzzy">
      <Fülek>
        <Lap TabOrder = "1" TabLabel = "x" SharePointContentType = "a" AdditionalConstraints = "ac1" />
        <Lap TabOrder = "2" TabLabel = "y" SharePointContentType = "b" AdditionalConstraints = "ac2" />
      </Fülek>
    </PageLayout>

    <PageLayout name = "xyzzy2">
      <Fülek>
        <TAB TabOrder = "100" TabLabel = "x" SharePointContentType = "a" AdditionalConstraints = "ac1" />
        <TAB TabOrder = "101" TabLabel = "y" SharePointContentType = "b" AdditionalConstraints = "ac2" />
        <TAB TabOrder = "103" TabLabel = "z" SharePointContentType = "c" AdditionalConstraints = "ac3" />
      </Fülek>
    </PageLayout>

  </PageLayouts>
</DeafultConfigurationSets>

Szeretné felépíteni néhány futásidőben fülek, a fenti elemzése által.  Én lapfülek lapelrendezés függ.  Ha az én-m oldal elrendezés neve "xyzzy2" majd azt akarja fülek 100, 101 és 103 (a lapfülek <PageLayout name = "xyzzy2">).

Itt van a LINQ, hogy ez nem:

var allTabs =
              a p
                  XElement.Parse(theXmlToParse).
                 
Elemek("PageLayouts").
                  Elemek("PageLayout")
              ahol (p.Attribute("név").Value.Equals("xyzzy2"))
              m-p.Elements("Tabs").Elemek("Lap")
              Jelölje ki a m;

          Results.Text = karakterlánc.Üres;

          foreach (var aTab allTabs)
          {
              Results.Text = (egyenlőségjel)
                  "A bejárási sorrend: " + aTab.Attribute("TabOrder").Érték + " |" +
                  "Lap címke: " + aTab.Attribute("TabLabel").Érték + " | " +
                  "SharePointContentType: " + aTab.Attribute("SharePointContentType").Érték + " | " +
                  "AdditionalConstraints: " + aTab.Attribute("AdditionalConstraints").Érték + "r.";
          }

A fenti, a "theXmlToParse" változó karakterlánc-változó, de használható a terhelés() Ha tetszik a folyamon módszer.

"Eredmények" egy webes űrlapon, és ezt a kódot végrehajtja a címke, úgy néz ki mint ez:

SNAGHTML11cd2e7c

Még nem dolgozott-, hogyan lehet rendezni az eredmények még, hogy elmegyek, jövőbeni blogbejegyzést.

</vége>

Subscribe to my blog.

Kövesse nekem Twitter http://www.twitter.com/pagalvin