SyndicationFeed.ElementExtensions Property

Definition

Gets the element extensions for the feed.

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 instance that contains the element extensions in the feed.

Examples

The following code shows how to add element extensions to a SyndicationFeed instance.

SyndicationFeed feed = new SyndicationFeed();

// Add several different types of element extensions
feed.ElementExtensions.Add("simpleString", "", "hello, world!");
feed.ElementExtensions.Add("simpleString", "", "another simple string");

// DataContractExtension is a user-defined type marked with the DataContractAttribute
feed.ElementExtensions.Add( new DataContractExtension() {Key = "X", Value = 4});

// XmlSerializerExtension is a user-defined type that defines a ToString() method
feed.ElementExtensions.Add( new XmlSerializerExtension() {Key = "Y", Value = 8}, new XmlSerializer(typeof(XmlSerializerExtension)));

feed.ElementExtensions.Add(new XElement("xElementExtension", new XElement("Key", new XAttribute("attr1", "someValue"), "Z"),
    new XElement("Value", new XAttribute("attr1", "someValue"), "15")).CreateReader());
Dim feed As New SyndicationFeed()

' Add several different types of element extensions.
feed.ElementExtensions.Add("simpleString", "", "hello, world!")
feed.ElementExtensions.Add("simpleString", "", "another simple string")

'  DataContractExtension is a user-defined type marked with the DataContractAttribute
feed.ElementExtensions.Add(New DataContractExtension With {.Key = "X", .Value = 4})

'  XmlSerializerExtension is a user-defined type that defines a ToString() method
feed.ElementExtensions.Add(New XmlSerializerExtension With {.Key = "Y", .Value = 8}, New XmlSerializer(GetType(XmlSerializerExtension)))

feed.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. You can add any valid XML element as an extension, provided its namespace is different from the enclosing namespace.

<mg:MyElement xmlns:mg="http://myserver/elements" />

For an example of adding element extensions, see the Loosely-Typed Extensions sample.

Applies to