[英]RSS Reader C# for multiple URLs
無法找到正確的方法為C#中的多個URL構建RSS閱讀器。
namespace RSSFeedApp.Controllers
{
public static class RSSController
{
private static string _blogURL = "http://www.vg.no/export/Alle/rdf.hbs?kat=sport";
public static IEnumerable<RSSFeedApp.Models.Rss> GetRssFeed()
{
XDocument feedXml = XDocument.Load(_blogURL);
var feeds = from feed in feedXml.Descendants("item")
select new RSSFeedApp.Models.Rss
{
Title = feed.Element("title").Value,
Link = feed.Element("link").Value
};
return feeds;
}
}
}
namespace RSSFeedApp.Models
{
public class Rss
{
public string Link { get; set; }
public string Title { get; set; }
}
}
@foreach (var item in RSSFeedApp.Controllers.RSSController.GetRssFeed())
{
<tr style="border-bottom: 1px solid #34693a;">
<td>
<a href="@item.Link">@System.Web.HttpUtility.HtmlDecode(item.Title)</a>
</td>
<td>
<a href="@item.Link" target="_blank"><i class="fa fa-book"></i></a>
</td>
</tr>
}
有人知道該怎么做嗎? 由於Razor語法,必須使用IEnumerable。 據我了解,XDocument無法讀取多個URL或列表?
我做了類似的事情。 這是我的代碼的摘要:
(我的RSS模型是相同的)
RSSReader模型:
public class RsssReader
{
public static IEnumerable<RSSS> GetRssFeed(string url)
{
XDocument xdoc;
var feeds = from feed in xdoc.Descendants("item")
select new RSSS
{
Title = feed.Element("title").Value,
Link = feed.Element("link").Value,
};
return feeds;
}
}
public static IEnumerable<RSSS> GetMultipleFeeds(string searchTerm)
{
string urluno = "http://your/first/link";
string url = "http://your/second/link";
string url2 = "http://your/second/link";
string urldos = "http://your/second/link";
return GetRssFeed(urluno).Union(GetRssFeed(url).Union(GetRssFeed(url2).Union(GetRssFeed(urldos))));
}
}
RSSController:
public class RSSSController : Controller
{
public ActionResult Index(string searchString)
{
return View(Search.Models.RsssReader.GetMultipleFeeds(searchString));
}
然后我的觀點是這樣的:
<table>
<tr>
<th>
Title
</th>
<th>
Link
</th>
</tr>
@foreach (var item in Model)
{
<tr>
<td>
@item.Title
</td>
<td>
<a href="@item.Link" target="_blank">@item.Link</a>
</td>
</tr>
}
}
</table>
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.