Seo sampla tapa ag baint úsáide as LINQ a pharsáil roinnt XML agus a fháil ar an milis, tréithe milis ann.
Seo an XML a ba mhaith liom a pharsáil:
<?xml version = "1.0" ionchódú = "UTF-8" ?>
<DeafultConfigurationSets>
<PageLayouts><PageLayout-ainm = "xyzzy">
<Tabs>
<Tab TabOrder="1" TabLabel="x" SharePointContentType="a" AdditionalConstraints="ac1"/>
<Tab TabOrder="2" TabLabel="y" SharePointContentType="b" AdditionalConstraints="ac2"/>
</Tabs>
</PageLayout><PageLayout name="xyzzy2">
<Tabs>
<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"/>
</Tabs>
</PageLayout></PageLayouts>
</DeafultConfigurationSets>
Ba mhaith liom a thógáil suas roinnt tabs ag runtime ag parsáil an méid sin thuas. Mo tabs ag brath Ar an leagan amach na leathanach. Is é mo ainm DM Leathanach leagan amach ar "xyzzy2" ansin ba mhaith liom a fháil tabs 100, 101 agus 103 (an tabs in <PageLayout ainm = "xyzzy2">).
Seo an LINQ go ndéanann sé:
var = allTabs
ó p i
XElement.Parse(theXmlToParse).
Eilimintí("PageLayouts").
Eilimintí("PageLayout")
Nuair a (p.Attribute("name").Value.Equals("xyzzy2"))
ó dom i p.Elements("Tabs").Eilimintí("Tab")
Roghnaigh m;Results.Text = string.Empty;
foreach (Bhí ATAB isteach allTabs)
{
Results.Text =
"Tab Order: " + aTab.Attribute("TabOrder").Luach + " |" +
"Tab Label: " + aTab.Attribute("TabLabel").Luach + " | " +
"SharePointContentType: " + aTab.Attribute("SharePointContentType").Luach + " | " +
"AdditionalConstraints: " + aTab.Attribute("AdditionalConstraints").Luach + "\r";
}
Sa thuas, Is é an athróg "theXmlToParse" athróg teaghrán, ach is féidir leat úsáid a bhaint as an t-ualach() modh ar sruth más mian leat.
"Torthaí" Is é an lipéad ar fhoirm ngréasán Agus nuair a fhorghníomhú an gcód seo, tá sé cosúil leis an:
Nach bhfuil mé ag obair amach conas a shórtáil na torthaí fós, mar sin beidh mé saoire Sin haghaidh a blog post amach anseo.
</deireadh>
Lean mé ar Twitter ag http://www.twitter.com/pagalvin