SyndicationItem.ElementExtensions Property
Definition
Important
Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.
Gets the element extensions contained in the syndication item.
public:
property System::ServiceModel::Syndication::SyndicationElementExtensionCollection ^ ElementExtensions { System::ServiceModel::Syndication::SyndicationElementExtensionCollection ^ get(); };
public System.ServiceModel.Syndication.SyndicationElementExtensionCollection ElementExtensions { get; }
member this.ElementExtensions : System.ServiceModel.Syndication.SyndicationElementExtensionCollection
Public ReadOnly Property ElementExtensions As SyndicationElementExtensionCollection
Property Value
A SyndicationElementExtensionCollection that contains the element extensions.
Examples
The following code shows how to add element extensions to a SyndicationItem instance.
SyndicationItem item = new SyndicationItem();
// Add several different types of element extensions
item.ElementExtensions.Add("simpleString", "", "hello, world!");
item.ElementExtensions.Add("simpleString", "", "another simple string");
// DataContractExtension is a user-defined type marked with the DataContractAttribute
item.ElementExtensions.Add(new DataContractExtension() { Key = "X", Value = 4 });
// XmlSerializerExtension is a user-defined type that defines a ToString() method
item.ElementExtensions.Add(new XmlSerializerExtension() { Key = "Y", Value = 8 }, new XmlSerializer(typeof(XmlSerializerExtension)));
item.ElementExtensions.Add(new XElement("xElementExtension", new XElement("Key", new XAttribute("attr1", "someValue"), "Z"),
new XElement("Value", new XAttribute("attr1", "someValue"), "15")).CreateReader());
Dim item As New SyndicationItem()
' Add several different types of element extensions
item.ElementExtensions.Add("simpleString", "", "hello, world!")
item.ElementExtensions.Add("simpleString", "", "another simple string")
' DataContractExtension is a user-defined type marked with the DataContractAttribute
item.ElementExtensions.Add(New DataContractExtension With {.Key = "X", .Value = 4})
' XmlSerializerExtension is a user-defined type that defines a ToString() method
item.ElementExtensions.Add(New XmlSerializerExtension With {.Key = "Y", .Value = 8}, New XmlSerializer(GetType(XmlSerializerExtension)))
item.ElementExtensions.Add(New XElement("xElementExtension", New XElement("Key", New XAttribute("attr1", "someValue"), "Z"), _
New XElement("Value", New XAttribute("attr1", "someValue"), "15")).CreateReader())
Remarks
Element extensions are valid XML elements that are not specified in either the Atom 1.0 or RSS 2.0 specifications. Any valid XML element can be added as an extension provided its namespace is different from the enclosing namespace. When serialized, extensions are written like any other XML element.
<mg:MyElement xmlns:mg="http://myserver/elements" />
For a complete example that shows how to add element extensions, see the Loosely-Typed Extensions sample.