System.ServiceModel.Syndication 9.0.0-preview.1.24080.9

About

Provides types for generating and consuming RSS and Atom feeds. It is used for creating and parsing syndication feeds, making it easier to build and integrate web content syndication.

Key Features

  • Easy generation and parsing of RSS and Atom feeds.
  • Customizable for different syndication needs.
  • Support for both feed reading and writing.

How to Use

Creating a Feed

using System.ServiceModel.Syndication;
using System.Xml;

// Create a new syndication feed
SyndicationFeed feed = new SyndicationFeed(
    "Feed Title",
    "Feed Description",
    new Uri("http://example.com"),
    "FeedID",
    DateTime.Now);

// Add items to the feed
SyndicationItem item1 = new SyndicationItem(
    "Title1",
    "Content1",
    new Uri("http://example.com/item1"));
feed.Items = new List<SyndicationItem> { item1 };

// Serialize the feed to RSS format
using (XmlWriter writer = XmlWriter.Create("rss.xml"))
{
    Rss20FeedFormatter rssFormatter = new Rss20FeedFormatter(feed);
    rssFormatter.WriteTo(writer);
}

Resulting RSS feed:

<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:a10="http://www.w3.org/2005/Atom" version="2.0">
    <channel>
        <title>Feed Title</title>
        <link>http://example.com/</link>
        <description>Feed Description</description>
        <lastBuildDate>Sat, 11 Nov 2023 18:05:21 +0100</lastBuildDate>
        <a10:id>FeedID</a10:id>
        <item>
            <link>http://example.com/item1</link>
            <title>Title1</title>
            <description>Content1</description>
        </item>
    </channel>
</rss>

Consuming a Feed

using System.ServiceModel.Syndication;
using System.Xml;

string feedUrl = "https://devblogs.microsoft.com/dotnet/feed/";
using XmlReader reader = XmlReader.Create(feedUrl);

// Read the feed using Atom10FeedFormatter.
SyndicationFeed feed = SyndicationFeed.Load(reader);

Console.WriteLine($"Feed Title: {feed.Title.Text}");
Console.WriteLine("Feed Items:");

// Iterate through the feed items and display the title and a brief summary of each.
foreach (SyndicationItem item in feed.Items)
{
    Console.WriteLine($"Title: {item.Title.Text}");
    Console.WriteLine($"Published Date: {item.PublishDate.DateTime}");
}

/*
 * This code produces the following output:
 *
 * Feed Title: .NET Blog
 * Feed Items:
 * - Title: Join us for the Great .NET 8 Hack
 *   Published Date: 07/11/2023 18:05:00
 * - Title: The convenience of System.IO
 *   Published Date: 06/11/2023 18:05:00
 */

Main Types

The main types provided by this library are:

  • System.ServiceModel.Syndication.SyndicationFeed
  • System.ServiceModel.Syndication.SyndicationItem
  • System.ServiceModel.Syndication.Rss20FeedFormatter
  • System.ServiceModel.Syndication.Atom10FeedFormatter

Additional Documentation

Feedback & Contributing

System.ServiceModel.Syndication is released as open source under the MIT license. Bug reports and contributions are welcome at the GitHub repository.

Showing the top 20 packages that depend on System.ServiceModel.Syndication.

Packages Downloads
Microsoft.Windows.Compatibility
This Windows Compatibility Pack provides access to APIs that were previously available only for .NET Framework. It can be used from both .NET as well as .NET Standard.
8
Microsoft.Windows.Compatibility
This Windows Compatibility Pack provides access to APIs that were previously available only for .NET Framework. It can be used from both .NET as well as .NET Standard.
9
Microsoft.Windows.Compatibility
This Windows Compatibility Pack provides access to APIs that were previously available only for .NET Framework. It can be used from both .NET as well as .NET Standard.
10
Microsoft.Windows.Compatibility
This Windows Compatibility Pack provides access to APIs that were previously available only for .NET Framework. It can be used from both .NET as well as .NET Standard.
11
Microsoft.Windows.Compatibility
This Windows Compatibility Pack provides access to APIs that were previously available only for .NET Framework. It can be used from both .NET Core as well as .NET Standard.
8
Microsoft.Windows.Compatibility
This Windows Compatibility Pack provides access to APIs that were previously available only for .NET Framework. It can be used from both .NET Core as well as .NET Standard. When using NuGet 3.x this package requires at least version 3.4.
8
Microsoft.Windows.Compatibility
This Windows Compatibility Pack provides access to APIs that were previously available only for .NET Framework. It can be used from both .NET Core as well as .NET Standard. When using NuGet 3.x this package requires at least version 3.4.
10
Microsoft.Windows.Compatibility
This Windows Compatibility Pack provides access to APIs that were previously available only for .NET Framework. It can be used from both .NET Core as well as .NET Standard. When using NuGet 3.x this package requires at least version 3.4.
12
Microsoft.Windows.Compatibility
This Windows Compatibility Pack provides access to APIs that were previously available only for .NET Framework. It can be used from both .NET Core as well as .NET Standard. When using NuGet 3.x this package requires at least version 3.4.
696

https://go.microsoft.com/fwlink/?LinkID=799421

.NET Framework 4.6.2

  • No dependencies.

.NET 8.0

  • No dependencies.

.NET 9.0

  • No dependencies.

.NET Standard 2.0

  • No dependencies.

Version Downloads Last updated
9.0.0-rc.2.24473.5 1 11/09/2024
9.0.0-rc.1.24431.7 0 09/10/2024
9.0.0-preview.7.24405.7 0 08/13/2024
9.0.0-preview.6.24327.7 0 07/09/2024
9.0.0-preview.5.24306.7 0 06/11/2024
9.0.0-preview.4.24266.19 3 06/01/2024
9.0.0-preview.3.24172.9 2 05/12/2024
9.0.0-preview.2.24128.5 5 05/11/2024
9.0.0-preview.1.24080.9 4 06/01/2024
8.0.0 3 05/08/2024
8.0.0-rc.2.23479.6 1 05/31/2024
8.0.0-rc.1.23419.4 4 05/31/2024
8.0.0-preview.7.23375.6 1 06/01/2024
8.0.0-preview.6.23329.7 1 06/01/2024
8.0.0-preview.5.23280.8 4 06/01/2024
8.0.0-preview.4.23259.5 3 06/01/2024
8.0.0-preview.3.23174.8 1 06/01/2024
8.0.0-preview.2.23128.3 3 06/01/2024
8.0.0-preview.1.23110.8 3 06/01/2024
7.0.0 2 05/26/2024
7.0.0-rc.2.22472.3 3 05/31/2024
7.0.0-rc.1.22426.10 1 06/01/2024
7.0.0-preview.7.22375.6 6 06/01/2024
7.0.0-preview.6.22324.4 1 06/01/2024
7.0.0-preview.5.22301.12 1 06/01/2024
7.0.0-preview.4.22229.4 4 05/20/2024
7.0.0-preview.3.22175.4 2 06/01/2024
7.0.0-preview.2.22152.2 4 06/01/2024
7.0.0-preview.1.22076.8 3 05/20/2024
6.0.2-mauipre.1.22102.15 5 06/01/2024
6.0.2-mauipre.1.22054.8 2 06/01/2024
6.0.0 3 05/26/2024
6.0.0-rc.2.21480.5 3 05/31/2024
6.0.0-rc.1.21451.13 3 06/01/2024
6.0.0-preview.7.21377.19 2 06/01/2024
6.0.0-preview.6.21352.12 5 06/01/2024
6.0.0-preview.5.21301.5 5 06/01/2024
6.0.0-preview.4.21253.7 3 06/01/2024
6.0.0-preview.3.21201.4 5 06/01/2024
6.0.0-preview.2.21154.6 3 06/01/2024
6.0.0-preview.1.21102.12 2 06/01/2024
5.0.0 5 09/13/2022
5.0.0-rc.2.20475.5 3 05/31/2024
5.0.0-rc.1.20451.14 2 06/01/2024
5.0.0-preview.8.20407.11 1 06/01/2024
5.0.0-preview.7.20364.11 4 06/01/2024
5.0.0-preview.6.20305.6 5 06/01/2024
5.0.0-preview.5.20278.1 2 06/01/2024
5.0.0-preview.4.20251.6 3 06/01/2024
5.0.0-preview.3.20214.6 2 06/01/2024
5.0.0-preview.2.20160.6 1 06/01/2024
5.0.0-preview.1.20120.5 2 06/01/2024
4.7.0 688 03/06/2023
4.7.0-preview3.19551.4 1 06/01/2024
4.7.0-preview2.19523.17 1 06/01/2024
4.7.0-preview1.19504.10 4 06/01/2024
4.6.0 1 05/26/2024
4.6.0-rc1.19456.4 4 05/31/2024
4.6.0-preview9.19421.4 5 06/01/2024
4.6.0-preview9.19416.11 4 06/01/2024
4.6.0-preview8.19405.3 3 06/01/2024
4.6.0-preview7.19362.9 1 06/01/2024
4.6.0-preview6.19303.8 1 06/01/2024
4.6.0-preview6.19264.9 1 06/01/2024
4.6.0-preview5.19224.8 1 06/01/2024
4.6.0-preview4.19212.13 4 06/01/2024
4.6.0-preview3.19128.7 5 06/01/2024
4.6.0-preview.19073.11 6 06/01/2024
4.6.0-preview.18571.3 2 06/01/2024
4.5.0 2 05/26/2024
4.5.0-rc1 2 05/31/2024
4.5.0-preview2-26406-04 3 06/01/2024
4.5.0-preview1-26216-02 2 06/01/2024
4.5.0-preview1-25914-04 3 06/01/2024