XmlTextWriter xmlRSS = new XmlTextWriter(Response.OutputStream, Encoding.UTF8);
Other codes...
List<RssItem> rssContents = new List<RssItem>();
get rssContents data ....
foreach (RssItem item in rssContents)
{
xmlRSS.WriteStartElement("item");
xmlRSS.WriteElementString("title", item.Title);
//How can i add image element here...
xmlRSS.WriteElementString("description", item.Description);
xmlRSS.WriteElementString("link", item.Link);
xmlRSS.WriteElementString("pubDate", item.PublishDate);
xmlRSS.WriteEndElement();
}
xmlRSS.WriteEndElement();
xmlRSS.WriteEndElement();
xmlRSS.WriteEndDocument();
x开发者_开发问答mlRSS.Flush();
xmlRSS.Close();
Response.End();
xmlRss.WriteElementString("image", "imagedata");
EDIT: OK use the built-in syndication support.
var feed = new SyndicationFeed();
var items = new List<SyndicationItem>();
foreach (var item in rssItems)
{
var syndicationItem = new SyndicationItem
{
Title = item.Title,
Content = item.Description,
PublishDate = item.PublishDate,
};
syndicationItem.ElementExtensions.Add(new XElement("image", item.Image));
syndicationItem.AddPermalink(new Uri(item.Link));
items.Add(syndicationItem);
}
feed.Items = items;
using (var xml = new XmlTextWriter(Response.OutputStream, Encoding.UTF8))
{
feed.SaveAsRss20(xml);
}
精彩评论