SyndicationFeed Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Représente un objet de flux de niveau supérieur, <feed
> dans Atom 1.0 et <rss
> dans RSS 2.0.
public ref class SyndicationFeed
public class SyndicationFeed
type SyndicationFeed = class
Public Class SyndicationFeed
- Héritage
-
SyndicationFeed
Exemples
Le code suivant indique comment créer une instance SyndicationFeed et la sérialiser à la fois vers Atom 1.0 et vers RSS 2.0.
SyndicationFeed feed = new SyndicationFeed("Feed Title", "Feed Description", new Uri("http://Feed/Alternate/Link"), "FeedID", DateTime.Now);
// Add a custom attribute.
XmlQualifiedName xqName = new XmlQualifiedName("CustomAttribute");
feed.AttributeExtensions.Add(xqName, "Value");
SyndicationPerson sp = new SyndicationPerson("jesper@contoso.com", "Jesper Aaberg", "http://Jesper/Aaberg");
feed.Authors.Add(sp);
SyndicationCategory category = new SyndicationCategory("FeedCategory", "CategoryScheme", "CategoryLabel");
feed.Categories.Add(category);
feed.Contributors.Add(new SyndicationPerson("lene@contoso.com", "Lene Aaling", "http://lene/aaling"));
feed.Copyright = new TextSyndicationContent("Copyright 2007");
feed.Description = new TextSyndicationContent("This is a sample feed");
// Add a custom element.
XmlDocument doc = new XmlDocument();
XmlElement feedElement = doc.CreateElement("CustomElement");
feedElement.InnerText = "Some text";
feed.ElementExtensions.Add(feedElement);
feed.Generator = "Sample Code";
feed.Id = "FeedID";
feed.ImageUrl = new Uri("http://server/image.jpg");
TextSyndicationContent textContent = new TextSyndicationContent("Some text content");
SyndicationItem item = new SyndicationItem("Item Title", textContent, new Uri("http://server/items"), "ItemID", DateTime.Now);
List<SyndicationItem> items = new List<SyndicationItem>();
items.Add(item);
feed.Items = items;
feed.Language = "en-us";
feed.LastUpdatedTime = DateTime.Now;
SyndicationLink link = new SyndicationLink(new Uri("http://server/link"), "alternate", "Link Title", "text/html", 1000);
feed.Links.Add(link);
XmlWriter atomWriter = XmlWriter.Create("atom.xml");
Atom10FeedFormatter atomFormatter = new Atom10FeedFormatter(feed);
atomFormatter.WriteTo(atomWriter);
atomWriter.Close();
XmlWriter rssWriter = XmlWriter.Create("rss.xml");
Rss20FeedFormatter rssFormatter = new Rss20FeedFormatter(feed);
rssFormatter.WriteTo(rssWriter);
rssWriter.Close();
Dim feed As SyndicationFeed = New SyndicationFeed("Feed Title", "Feed Description", New Uri("http:'Feed/Alternate/Link"), "FeedID", DateTime.Now)
' Add a custom attribute.
Dim xqName As XmlQualifiedName = New XmlQualifiedName("CustomAttribute")
feed.AttributeExtensions.Add(xqName, "Value")
Dim sp As SyndicationPerson = New SyndicationPerson("jesper@contoso.com", "Jesper Aaberg", "http:'jesper/aaberg")
feed.Authors.Add(sp)
Dim category As SyndicationCategory = New SyndicationCategory("FeedCategory", "CategoryScheme", "CategoryLabel")
feed.Categories.Add(category)
feed.Contributors.Add(New SyndicationPerson("Lene@contoso.com", "Lene Aaling", "http:'Lene/Aaling"))
feed.Copyright = New TextSyndicationContent("Copyright 2007")
feed.Description = New TextSyndicationContent("This is a sample feed")
' Add a custom element.
Dim doc As XmlDocument = New XmlDocument()
Dim feedElement As XmlElement = doc.CreateElement("CustomElement")
feedElement.InnerText = "Some text"
feed.ElementExtensions.Add(feedElement)
feed.Generator = "Sample Code"
feed.Id = "FeedID"
feed.ImageUrl = New Uri("http:'server/image.jpg")
Dim textContent As TextSyndicationContent = New TextSyndicationContent("Some text content")
Dim item As SyndicationItem = New SyndicationItem("Item Title", textContent, New Uri("http:'server/items"), "ItemID", DateTime.Now)
Dim items As Collection(Of SyndicationItem) = New Collection(Of SyndicationItem)()
items.Add(item)
feed.Items = items
feed.Language = "en-us"
feed.LastUpdatedTime = DateTime.Now
Dim link As SyndicationLink = New SyndicationLink(New Uri("http:'server/link"), "alternate", "Link Title", "text/html", 1000)
feed.Links.Add(link)
Dim atomWriter As XmlWriter = XmlWriter.Create("atom.xml")
Dim atomFormatter As Atom10FeedFormatter = New Atom10FeedFormatter(feed)
atomFormatter.WriteTo(atomWriter)
atomWriter.Close()
Dim rssWriter As XmlWriter = XmlWriter.Create("rss.xml")
Dim rssFormatter As Rss20FeedFormatter = New Rss20FeedFormatter(feed)
rssFormatter.WriteTo(rssWriter)
rssWriter.Close()
Le code XML suivant montre comment un SyndicationFeed est sérialisé vers Atom 1.0.
<feed xml:lang="en-us" CustomAttribute="Value" xmlns="http://www.w3.org/2005/Atom">
<title type="text">Feed Title</title>
<subtitle type="text">This is a sample feed</subtitle>
<id>FeedID</id>
<rights type="text">Copyright 2007</rights>
<updated>2007-04-13T17:29:38Z</updated>
<category term="FeedCategory" label="CategoryLabel" scheme="CategoryScheme" />
<logo>http://contoso/image.jpg</logo>
<author>
<name>Jesper Aaberg</name>
<uri>http://contoso/Aaberg</uri>
<email>Jesper.Asberg@contoso.com</email>
</author>
<contributor>
<name>Lene Aalling</name>
<uri>http://contoso/Aalling</uri>
<email>Lene.Aaling@contoso.com</email>
</contributor>
<generator>Sample Code</generator>
<link rel="alternate" type="text/html" title="Link Title" length="1000" href="http://contoso/link" />
<link customAttribute="value" rel="alternate" type="text/html" title="Link Title" length="1000" href="http://contoso/link" />
<CustomElement xmlns="">Some text</CustomElement>
<entry>
<id>ItemID</id>
<title type="text">Item Title</title>
<updated>2007-04-13T17:29:38Z</updated>
<link rel="alternate" href="http://contoso/items" />
<content type="text">Some text content</content>
</entry>
</feed>
Le code XML suivant montre comment une instance SyndicationFeed est sérialisée vers RSS 2.0.
<rss xmlns:a10="http://www.w3.org/2005/Atom" version="2.0">
<channel CustomAttribute="Value">
<title>Titre du flux</title>
<link>http://feed/Alternate/Link</link>
<description>Il s’agit d’un exemple de flux</description>
<language>en-us</language>
<copyright>Copyright 2007</copyright>
<managingEditor>Jesper.Aaberg@contoso.com</managingEditor>
<lastBuildDate>Fri, 13 Apr 2007 17:29:38 Z</lastBuildDate>
<category domain="CategoryScheme">FeedCategory</category>
<a10:link rel="alternate" type="text/html" title="Link Title" length="1000" href="http://contoso/link" />
<generator>Sample Code</generator>
<a10:contributor>
<a10:name>Lene Aalling</a10:name>
<a10:uri>http://contoso/Aalling</a10:uri>
<a10:email>Lene.Aalling@contoso.com</a10:email>
</a10:contributor>
<a10:author>
<a10:name>Lene Aalling</a10:name>
<a10:uri>http://contoso/Aalling</a10:uri>
<a10:email>Lene.Aalling@contoso.com</a10:email>
</a10:author>
<image>
<url>http://contoso/image.jpg</url>
<title>Titre du flux</title>
<link>http://feed/Alternate/Link</link>
</image>
<a10:id>FeedID</a10:id>
<a10:link customAttribute="value" rel="alternate" type="text/html" title="Link Title" length="1000" href="http://contoso/link" />
<CustomElement>Some text</CustomElement>
<item>
<guid isPermaLink="false">ItemID</guid>
<link>http://contoso/items</link>
<title>Titre de l’élément</title>
<description>Contenu texte</description>
<a10:updated>2007-04-13T17:29:38Z</a10:updated>
</item>
</channel>
</rss>
Remarques
Lorsqu’elle est sérialisée dans Atom 1.0, une SyndicationFeed instance est écrite dans un <feed>
élément. Le tableau suivant montre comment chaque propriété définie dans la classe SyndicationFeed est sérialisée vers Atom 1.0.
Propriété SyndicationFeed | Forme sérialisée |
---|---|
AttributeExtensions |
Attribut dans l’élément <feed> pour chaque attribut de la collection. |
Authors |
Élément <author> pour chaque SyndicationPerson élément de la collection. |
Categories |
Élément <category> pour chaque SyndicationCategory élément de la collection. |
Contributors |
Élément <contributor> pour chaque SyndicationPerson élément de la collection. |
Copyright |
Élément <rights> . |
Description |
Élément <subtitle> . |
ElementExtensions |
Chaque élément de la collection est écrit dans l’élément <feed> . |
Generator |
Élément <generator> . |
Id |
Élément <id> . |
ImageUri |
Élément <logo> . |
Items |
Élément <entry> pour chaque SyndicationItem élément de la collection. |
Language |
Non sérialisé. |
LastUpdatedTime |
Élément <updated> . |
Links |
Élément <link> pour chaque SyndicationLink élément de la collection. |
Title |
Élément <title> . |
Lorsqu'elle est sérialisée vers RSS 2.0, une instance SyndicationFeed est écrite dans un élément <rss>
. Le tableau suivant montre comment chaque propriété définie dans la classe SyndicationFeed est sérialisée vers RSS 2.0.
Propriété SyndicationFeed | Forme sérialisée |
---|---|
AttributeExtensions |
Attribut dans l’élément <channel> pour chaque attribut de la collection. |
Authors |
Élément <managingEditor> s’il n’en existe qu’un SyndicationPerson seul dans la collection ; sinon, un <a10:author> élément pour chacun SyndicationPerson d’eux dans la collection. |
Categories |
Élément <category> pour chaque SyndicationCategory élément de la collection. |
Contributors |
Élément <a10:contributor> pour chaque SyndicationPerson élément de la collection. |
Copyright |
Élément <copyright> . |
Description |
Élément <description> . |
ElementExtensions |
Chaque élément de la collection est écrit dans l’élément <channel> . |
Generator |
Élément <generator> . |
Id |
Élément <a10:id> . |
ImageUri |
Élément <image> . |
Items |
Élément <item> pour chaque SyndicationItem élément de la collection. |
Language |
Élément <language> . |
LastUpdatedTime |
Élément <lastBuildDate> . |
Links |
Élément <a10:link> pour chaque SyndicationLink élément de la collection. |
Title |
Élément <title> . |
Constructeurs
SyndicationFeed() |
Initialise une nouvelle instance de la classe SyndicationFeed. |
SyndicationFeed(IEnumerable<SyndicationItem>) |
Initialise une nouvelle instance de la classe SyndicationFeed avec la collection d'objets SyndicationItem spécifiée. |
SyndicationFeed(String, String, Uri) |
Initialise une nouvelle instance de la classe SyndicationFeed avec le titre, la description et l'URI (Uniform Resource Identifier) spécifiés. |
SyndicationFeed(String, String, Uri, IEnumerable<SyndicationItem>) |
Initialise une nouvelle instance de la classe SyndicationFeed avec le titre, la description et l'URI spécifiés, et une collection d'objets SyndicationItem. |
SyndicationFeed(String, String, Uri, String, DateTimeOffset) |
Crée une instance de la classe SyndicationFeed. |
SyndicationFeed(String, String, Uri, String, DateTimeOffset, IEnumerable<SyndicationItem>) |
Crée une instance de la classe SyndicationFeed. |
SyndicationFeed(SyndicationFeed, Boolean) |
Crée une nouvelle instance de la classe SyndicationFeed avec le flux spécifié. |
Propriétés
AttributeExtensions |
Obtient une collection d'extensions d'attribut. |
Authors |
Obtient une collection d'auteurs du flux. |
BaseUri |
Obtient ou définit l’URI de base pour l’instance SyndicationFeed. |
Categories |
Obtient une collection de catégories pour le flux. |
Contributors |
Obtient une collection des contributeurs du flux. |
Copyright |
Obtient ou définit les informations de copyright pour le flux. |
Description |
Obtient ou définit une description du flux. |
Documentation |
Obtient ou définit le lien vers la documentation relative au flux. |
ElementExtensions |
Obtient des extensions d’élément pour le flux. |
Generator |
Obtient ou définit le générateur du flux. |
Id |
Obtient ou définit l’ID du flux. |
ImageUrl |
Obtient ou définit l’URL d’image du flux. |
Items |
Obtient une collection des éléments de flux contenus dans le flux. |
Language |
Obtient ou définit la langue du flux. |
LastUpdatedTime |
Obtient ou définit l’heure de dernière mise à jour du flux. |
Links |
Obtient les liens associés au flux. |
SkipDays |
Obtient une collection de chaînes indiquant le jeu de valeurs dans l’élément « skipDays » du flux. |
SkipHours |
Obtient une collection d’entiers indiquant le jeu de valeurs dans l’élément « skipHours » du flux. |
TextInput |
Obtient ou définit la propriété TextInput du flux. |
TimeToLive |
Obtient ou définit l’attribut « ttl » du flux. |
Title |
Obtient ou définit le titre du flux de données. |
Méthodes
Clone(Boolean) |
Crée une copie de l'instance SyndicationFeed. |
CreateCategory() |
Crée une instance SyndicationCategory. |
CreateItem() |
Crée une instance SyndicationItem. |
CreateLink() |
Crée une instance SyndicationLink. |
CreatePerson() |
Crée une instance SyndicationPerson. |
Equals(Object) |
Détermine si l'objet spécifié est égal à l'objet actuel. (Hérité de Object) |
GetAtom10Formatter() |
Obtient une instance de Atom10FeedFormatter. |
GetHashCode() |
Fait office de fonction de hachage par défaut. (Hérité de Object) |
GetRss20Formatter() |
Obtient une instance de Rss20FeedFormatter. |
GetRss20Formatter(Boolean) |
Obtient une nouvelle instance Rss20FeedFormatter. |
GetType() |
Obtient le Type de l'instance actuelle. (Hérité de Object) |
Load(XmlReader) |
Charge un flux de syndication à partir du lecteur XML spécifié. |
Load<TSyndicationFeed>(XmlReader) |
Charge une instance dérivée de SyndicationFeed à partir du XmlReaderspécifié. |
MemberwiseClone() |
Crée une copie superficielle du Object actuel. (Hérité de Object) |
SaveAsAtom10(XmlWriter) |
Écrivez le flux de syndication dans le XmlWriter spécifié selon le format Atom 1.0. |
SaveAsRss20(XmlWriter) |
Écrivez le flux de syndication dans le XmlWriter spécifié selon le format RSS 2.0. |
ToString() |
Retourne une chaîne qui représente l'objet actuel. (Hérité de Object) |
TryParseAttribute(String, String, String, String) |
Tentatives d’analyse d’une extension d’attribut. |
TryParseElement(XmlReader, String) |
Tentatives d'analyse d'une extension d'élément. |
WriteAttributeExtensions(XmlWriter, String) |
Écrit les extensions d'attribut dans le XmlWriter spécifié à l'aide de la version de syndication indiquée. |
WriteElementExtensions(XmlWriter, String) |
Écrit les extensions d'élément dans le XmlWriter spécifié à l'aide de la version de syndication spécifiée. |