SyndicationFeed Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Representa um objeto de alimentação de topo, <feed> no Atom 1.0 e <rss> no RSS 2.0.
public ref class SyndicationFeed
public class SyndicationFeed
type SyndicationFeed = class
Public Class SyndicationFeed
- Herança
-
SyndicationFeed
Exemplos
O código seguinte mostra como criar uma SyndicationFeed instância e serializá-la tanto para o Atom 1.0 como para o 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()
O XML seguinte mostra como a SyndicationFeed é serializado para 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>
O XML seguinte mostra como uma SyndicationFeed instância é serializada para RSS 2.0.
<rss xmlns:a10="http://www.w3.org/2005/Atom" version="2.0">
<channel CustomAttribute="Value">
<title>Feed Title</title>
<link>http://feed/Alternate/Link</link>
<description>This is a sample feed</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>Feed Title</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>Item Title</title>
<description>Some text content</description>
<a10:updated>2007-04-13T17:29:38Z</a10:updated>
</item>
</channel>
</rss>
Observações
Quando serializada para Atom 1.0, uma SyndicationFeed instância é escrita num <feed> elemento. A tabela seguinte mostra como cada propriedade definida na SyndicationFeed classe é serializada para Atom 1.0.
| Propriedade SyndicationFeed | Forma serializada |
|---|---|
AttributeExtensions |
Um atributo no <feed> elemento para cada atributo na coleção. |
Authors |
Um <author> elemento para cada SyndicationPerson um da coleção. |
Categories |
Um <category> elemento para cada SyndicationCategory um da coleção. |
Contributors |
Um <contributor> elemento para cada SyndicationPerson um da coleção. |
Copyright |
Um <rights> elemento. |
Description |
Um <subtitle> elemento. |
ElementExtensions |
Cada elemento da coleção está escrito dentro do <feed> elemento. |
Generator |
Um <generator> elemento. |
Id |
Um <id> elemento. |
ImageUri |
Um <logo> elemento. |
Items |
Um <entry> elemento para cada SyndicationItem um da coleção. |
Language |
Não serializada. |
LastUpdatedTime |
Um <updated> elemento. |
Links |
Um <link> elemento para cada SyndicationLink um da coleção. |
Title |
Um <title> elemento. |
Quando serializada para RSS 2.0, uma SyndicationFeed instância é escrita num <rss> elemento. A tabela seguinte mostra como cada propriedade definida na SyndicationFeed classe é serializada para RSS 2.0.
| Propriedade SyndicationFeed | Forma serializada |
|---|---|
AttributeExtensions |
Um atributo no <channel> elemento para cada atributo na coleção. |
Authors |
Um <managingEditor> elemento se apenas um SyndicationPerson estiver na coleção; caso contrário, um <a10:author> elemento para cada SyndicationPerson elemento na coleção. |
Categories |
Um <category> elemento para cada SyndicationCategory um da coleção. |
Contributors |
Um <a10:contributor> elemento para cada SyndicationPerson um da coleção. |
Copyright |
Um <copyright> elemento. |
Description |
Um <description> elemento. |
ElementExtensions |
Cada elemento da coleção está escrito dentro do <channel> elemento. |
Generator |
Um <generator> elemento. |
Id |
Um <a10:id> elemento. |
ImageUri |
Um <image> elemento. |
Items |
Um <item> elemento para cada SyndicationItem um da coleção. |
Language |
Um <language> elemento. |
LastUpdatedTime |
Um <lastBuildDate> elemento. |
Links |
Um <a10:link> elemento para cada SyndicationLink um da coleção. |
Title |
Um <title> elemento. |
Construtores
| Name | Description |
|---|---|
| SyndicationFeed() |
Inicializa uma nova instância da SyndicationFeed classe. |
| SyndicationFeed(IEnumerable<SyndicationItem>) |
Inicializa uma nova instância da SyndicationFeed classe com a coleção especificada de SyndicationItem objetos. |
| SyndicationFeed(String, String, Uri, IEnumerable<SyndicationItem>) |
Inicializa uma nova instância da SyndicationFeed classe com o título, descrição, URI e coleção de SyndicationItem objetos especificados. |
| SyndicationFeed(String, String, Uri, String, DateTimeOffset, IEnumerable<SyndicationItem>) |
Cria uma nova instância da SyndicationFeed classe. |
| SyndicationFeed(String, String, Uri, String, DateTimeOffset) |
Cria uma nova instância da SyndicationFeed classe. |
| SyndicationFeed(String, String, Uri) |
Inicializa uma nova instância da SyndicationFeed classe com o título, descrição e Identificador Uniforme de Recursos (URI) especificados. |
| SyndicationFeed(SyndicationFeed, Boolean) |
Cria uma nova instância da SyndicationFeed classe com o feed especificado. |
Propriedades
| Name | Description |
|---|---|
| AttributeExtensions |
Recebe uma coleção de extensões de atributos. |
| Authors |
Obtém uma coleção de autores do feed. |
| BaseUri |
Obtém ou define o URI base da SyndicationFeed instância. |
| Categories |
Recebe uma coleção de categorias para o feed. |
| Contributors |
Recebe uma coleção dos contribuintes para o feed. |
| Copyright |
Obtém ou define a informação de direitos de autor do feed. |
| Description |
Recebe ou define uma descrição do feed. |
| Documentation |
Obtém ou define o link para a documentação do feed. |
| ElementExtensions |
Obtém as extensões de elementos para o alimentador. |
| Generator |
Recebe ou define o gerador do alimentador. |
| Id |
Obtém ou define o ID do feed. |
| ImageUrl |
Obtém ou define a URL da imagem para o feed. |
| Items |
Recebe uma coleção dos itens da ração contidos na ração. |
| Language |
Obtém ou define a linguagem do feed. |
| LastUpdatedTime |
Recebe ou define a hora em que o feed foi atualizado pela última vez. |
| Links |
Obtém os links associados ao feed. |
| SkipDays |
Recebe uma coleção de cadeias que indicam o conjunto de valores no elemento 'skipDays' para o feed. |
| SkipHours |
Obtém uma coleção de inteiros que indicam o conjunto de valores no elemento 'skipHours' para o feed. |
| TextInput |
Recebe ou define a propriedade TextInput para o feed. |
| TimeToLive |
Recebe ou define o atributo 'ttl' para o feed. |
| Title |
Recebe ou define o título do feed. |
Métodos
| Name | Description |
|---|---|
| Clone(Boolean) |
Cria uma cópia da SyndicationFeed instância. |
| CreateCategory() |
Cria uma nova SyndicationCategory instância. |
| CreateItem() |
Cria uma nova SyndicationItem instância. |
| CreateLink() |
Cria uma nova SyndicationLink instância. |
| CreatePerson() |
Cria uma nova SyndicationPerson instância. |
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetAtom10Formatter() |
Recebe uma Atom10FeedFormatter instância. |
| GetHashCode() |
Serve como função de hash predefinida. (Herdado de Object) |
| GetRss20Formatter() |
Recebe uma Rss20FeedFormatter instância. |
| GetRss20Formatter(Boolean) |
Recebe uma nova Rss20FeedFormatter instância. |
| GetType() |
Obtém o Type da instância atual. (Herdado de Object) |
| Load(XmlReader) |
Carrega um feed de sindicância a partir do leitor XML especificado. |
| Load<TSyndicationFeed>(XmlReader) |
Carrega uma SyndicationFeedinstância derivada em a partir do especificado XmlReader. |
| MemberwiseClone() |
Cria uma cópia superficial do atual Object. (Herdado de Object) |
| SaveAsAtom10(XmlWriter) |
Escreva o feed de sindicância no formato especificado XmlWriter no Atom 1.0. |
| SaveAsRss20(XmlWriter) |
Escreva o feed de sindicância no formato especificado XmlWriter em RSS 2.0. |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |
| TryParseAttribute(String, String, String, String) |
Tentativas de analisar uma extensão de atributo. |
| TryParseElement(XmlReader, String) |
Tenta analisar uma extensão de elemento. |
| WriteAttributeExtensions(XmlWriter, String) |
Escreve as extensões de atributos para o especificado XmlWriter usando a versão de sindicação especificada. |
| WriteElementExtensions(XmlWriter, String) |
Escreve as extensões de elementos para o especificado XmlWriter usando a versão de sindicação especificada. |