从博客Feed中读取rss Feed后,我需要提供以下内容。
我在下面写了代码片段。
private IEnumerable<RssReader> GetBlogRssFeeds()
{
var rssFeed = XDocument.Load("http://sampathloku.blogspot.com/feeds/posts/default?alt=rss");
var rssFeedOut= from item in rssFeed.Descendants("item")
select new RssReader
{
Title = item.Element("title").Value,
Link = item.Element("link").Value,
Description = (item.Element("description") != null) ? Regex.Match(item.Element("description").Value, @"^.{1,180}\b(?<!\s)").Value : ""
};
return rssFeedOut;
}
查看
<%@ Page Title="" ContentType="text/html" Language="C#" MasterPageFile="~/Views/Shared/Site.Master" Inherits="System.Web.Mvc.ViewPage<IEnumerable<RssReader>>" %>
<asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<table border="1">
<% foreach (var p in Model)
{ %>
<tr border="1">
<th>
<%= Html.Encode(p.Title) %>
</th>
</tr>
<tr border="1">
<th>
<%= Html.Encode(p.Description) %>
</th>
</tr>
<tr border="1">
<th>
<%= Html.Encode(p.Link) %>
</th>
</tr>
<% } %>
</table>
</asp:Content>
但我的最终结果显示一切如下。
更新
现在我的观点如下。
我的问题:如何显示图片和内容如上图所示?
更新了问题:如何在没有html标签的情况下获取说明?
答案 0 :(得分:4)
您的内容类型为application/rss+xml
。这样它就永远不会显示为html。
只需删除ContentType="application/rss+xml"
部分或将其替换为text/html
,然后将您的网页更改为html而不是rss。
没有办法告诉浏览器:嘿,你应该阅读rss,但格式化为html。您可以combine things(在HTML中使用rss标签),但它会评估浏览器认为最佳的方式(这不是您想要的)。
只需从你的rss读取输出html并将其格式化为html。