我正在尝试从网站上获取RSS源并使用我的网站上的转发器显示它。但是,无论我在下面的代码中使用“Feeds”,我都会收到错误消息:
private void PopulateRssFeed()
{
string RssFeedUrl = "http://timesofindia.feedsportal.com/c/33039/f/533965/index.rss";
List<Feeds> feeds = new List<Feeds>();
try
{
XDocument xDoc = new XDocument();
xDoc = XDocument.Load(RssFeedUrl);
var items = (from x in xDoc.Descendants("item")
select new
{
title = x.Element("title").Value,
link = x.Element("link").Value,
pubDate = x.Element("pubDate").Value,
description = x.Element("description").Value
});
if (items != null)
{
foreach (var i in items)
{
Feeds f = new Feeds
{
Title = i.title,
Link = i.link,
PublishDate = i.pubDate,
Description = i.description
};
feeds.Add(f);
}
}
rssRepeater.DataSource = feeds;
rssRepeater.DataBind();
}
catch (Exception ex)
{
throw;
}
}
我在下面的行中得到错误
List<Feeds> feeds = new List<Feeds>();
Feeds f = new Feeds;
Feed类如下:
namespace MumbaiLyst
{
public class Feeds
{
public string Title { get; set; }
public string Link { get; set; }
public string PublishDate { get; set; }
public string Description { get; set; }
}
}
这就是转发器的样子:
<asp:Repeater ID = "rssRepeater" runat = "server">
<ItemTemplate>
<table width="100%" border="0" cellpadding="0" cellspacing="5">
<tr>
<td>
<h3 style="color:#3E7CFF"><%#Eval("Title") %></h3>
</td>
<td width="200px">
<%#Eval("PublishDate") %>
</td>
</tr>
<tr>
<td colspan="2">
<hr />
<%#Eval("Description") %>
</td>
</tr>
<tr>
<td> </td>
<td align="right">
<a href='<%#Eval("Link") %>' target="_blank">Read More...</a>
</td>
</tr>
</table>
</ItemTemplate>
</asp:Repeater>
答案 0 :(得分:0)
代码对我来说非常合适。我将所有代码放在Default.aspx.cs文件中。 Feeds类位于同一名称空间中的同一文件中。代码本身没有问题。
在不知道项目结构的情况下,无法准确说明代码无法看到Feeds类的原因。