LINQ to XML e i namespaces prefix
LINQ to XML propone una struttura molto semplificata rispetto al più diffuso e blasonato XML DOM (Document Object Model). Tanto semplificata che i namespace prefix non ci sono più ed in fase di lettura vengono risolti incapsulandoli in un oggetto di tipo XNamespace. Ma se dobbiamo scriverli come facciamo? E' abbastanza semplice, ma occorre saperlo. Ecco come creare ed usare un namespace prefix:
XNamespace ns = "http://dotnetside.org";
XDocument xdoc = new XDocument(
new XDeclaration("1.0", "utf-8", "yes"),
new XElement(ns + "users",
new XAttribute(XNamespace.Xmlns + "dn", ns),
new XElement(ns + "user",
new XAttribute("id", "1"),
new XElement(ns + "name", "fabio"),
new XElement(ns + "user",
new XAttribute("id", "2"),
new XElement(ns + "name", "vito")))));
Ed il risultato è questo:
Assolutamente da tenere in mente ...