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:
Még nem dolgozott-, hogyan lehet rendezni az eredmények még, hogy elmegyek, jövőbeni blogbejegyzést.
</vége>
Kövesse nekem Twitter http://www.twitter.com/pagalvin