c# - Reading RSS Feed with MVC4 -
i'm trying read in , process wordpress blog onto mvc4 website. followed example here getting following error: read rss feeds c# mvc4
error: compiler error message: cs1061: 'mywebsites.models.wordpressrss' not contain definition 'rssfeed' , no extension method 'rssfeed' accepting first argument of type 'mywebsites.models.wordpressrss' found (are missing using directive or assembly reference?)
model
using system; using system.collections.generic; using system.linq; using system.net; using system.web; using system.xml.linq; namespace mywebsites.models { public class wordpressrss { public string title { get; set; } public string description { get; set; } public string link { get; set; } public string pubdate { get; set; } } public class readwordpressrss { public static list<wordpressrss> getfeed() { var client = new webclient(); client.headers.add("user-agent", "mozilla/4.0 (compatible; msie 6.0; windows nt 5.2; .net clr 1.0.3705;)"); var xmldata = client.downloadstring("https://blog.wordpress.com/feed/"); xdocument xml = xdocument.parse(xmldata); var feed = (from story in xml.descendants("item") select new wordpressrss { title = ((string)story.element("title")), link = ((string)story.element("link")), description = ((string)story.element("description")), pubdate = ((string)story.element("pubdate")) }).take(10).tolist(); return feed; } } public class getrssfeed { public list<wordpressrss> rssfeed { get; set; } } } controller
using system; using system.collections.generic; using system.linq; using system.web; using system.web.mvc; using system.xml; using mywebsites.models; namespace mywebsites.controllers { public class blogcontroller : controller { // // get: /blog/ public actionresult index() { getrssfeed model = new getrssfeed(); model.rssfeed = readwordpressrss.getfeed(); return view(model); } } } view
@model mywebsites.models.getrssfeed @{ viewbag.title = "blog"; } <div class="container"> @foreach (var item in model.rssfeed) { @item.rssfeed.firstordefault().title <br /> @html.raw(item.rssfeed.firstordefault().description) <br /> @convert.todatetime(item.rssfeed.firstordefault().pubdate) <br /> @item.rssfeed.firstordefault().link <br /> <br /><br /> } </div> <!-- container --> i feel im missing super simple cannot life of me resolve reference. appreciated.
i believe problem view.
in each loop, item refers wordpressrss item , not list.
try referencing properties directly.
@item.title instead of
@item.rssfeed.firstordefault().title
Comments
Post a Comment