Hoi allemaal 
Ik heb een probleempje... Ik bouw een WCF Web Service die een RSS 2.0 feed moet teruggeven. Als ik daar de Rss20FeedFormatter voor gebruik werkt alles eigenlijk prima, behalve het <link> element binnen <channel>. Volgens w3schools is dat element zelfs verplicht, maar ik zie niet hoe ik die kan krijgen. Als dit element niet is toegevoegd zien zowel IE als Firefox de feed niet als een geldig feed.
In code ziet het er nu ongeveer zo uit:
Als ik dit nu run werkt het wel, maar in plaats van <link>http://www.channel-link.eu/</link> krijg ik nu dit element:
En a10 is een XML namespace naar de Atom namespace... Maar ik wil een RSS feed! Geen ATOM feed!
Heeft iemand een idee, of weet iemand wat ik fout doe?
Ik heb een probleempje... Ik bouw een WCF Web Service die een RSS 2.0 feed moet teruggeven. Als ik daar de Rss20FeedFormatter voor gebruik werkt alles eigenlijk prima, behalve het <link> element binnen <channel>. Volgens w3schools is dat element zelfs verplicht, maar ik zie niet hoe ik die kan krijgen. Als dit element niet is toegevoegd zien zowel IE als Firefox de feed niet als een geldig feed.
In code ziet het er nu ongeveer zo uit:
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
| [ServiceContract] [AspNetCompatibilityRequirements(RequirementsMode = AspNetCompatibilityRequirementsMode.Allowed)] public class NewsService { [OperationContract] [WebGet(UriTemplate = "/")] public Rss20FeedFormatter GetRSS() { // Build the items that must be placed in the feed List<SyndicationItem> items = new List<SyndicationItem>(); for (int i = 0; i < 2; i++) { SyndicationItem si = new SyndicationItem(); si.Title = new TextSyndicationContent("Titel voor item " + i); si.PublishDate = DateTime.Now; si.Content = new TextSyndicationContent("Dit is content voor <strong>item nummer " + i + "</strong>...", TextSyndicationContentKind.XHtml); items.Add(si); } // Save the items to a new feed SyndicationFeed feed = new SyndicationFeed { Title = new TextSyndicationContent("News Headlines"), Description = new TextSyndicationContent("De laatste headlines!"), Items = items }; feed.Links.Add(new SyndicationLink(new Uri("http://www.channel-link.eu/"))); // Now return the formatter so that we get some nice RSS :) return new Rss20FeedFormatter(feed); } } |
Als ik dit nu run werkt het wel, maar in plaats van <link>http://www.channel-link.eu/</link> krijg ik nu dit element:
XML:
1
| <a10:link href="http://www.channe-link.eu/"/> |
En a10 is een XML namespace naar de Atom namespace... Maar ik wil een RSS feed! Geen ATOM feed!
Heeft iemand een idee, of weet iemand wat ik fout doe?