完全披露:我对MVC应用程序来说是全新的,所以我可以在这里接近我的方法。这是一个非常陡峭的学习曲线。
我的任务是开发一个可以通过Google快讯显示RSS Feed设置的MVC应用程序。 以下是我为“毒品半身像”设置的示例警报提要的链接,我正在尝试阅读:
http://www.google.com/alerts/feeds/11811034629636691510/10685173545303329123
如何将Feed的所有“条目”字段加载到可以在视图中显示的数据结构中? 尝试使用Create()函数以及使用Load()函数的XDocument将URL加载到XmlReader中时遇到了问题。我一直收到Uri的XmlException。
我使用以下作为我的Feed数据结构:
public class FeedViewModel
{
public FeedItem[] FeedItems { get; set; }
}
public class FeedItem
{
public string Title { get; set; }
public string Description { get; set; }
public DateTime Date { get; set; }
public string Link { get; set; }
}
我现在并不担心实际显示,我只关心将Feed数据加载到类中。任何人都可以帮助或指出我正确的方向吗?
答案 0 :(得分:0)
是的,您尝试阅读XmlReader
时可能会遇到XML异常,即使我不完全确定原因。
您可以做的是获取HttpResponse
。http://msdn.microsoft.com/en-us/library/system.net.webclient(v=vs.110).aspx
public static string HttpGet()
{
WebClient client = new WebClient();
// Add a user agent header in case the
// requested URI contains a query.
client.Headers.Add("user-agent", "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; .NET CLR 1.0.3705;)");
using (Stream data = client.OpenRead("http://www.google.com/alerts/feeds/11811034629636691510/10685173545303329123"))
{
using (StreamReader reader = new StreamReader(data))
{
string s = reader.ReadToEnd();
}
}
}
现在你有一个Xml格式的字符串,如果你的标题是动态的。您可以解析xml并根据Xml元素创建标题。