0
我有一個MVC5應用程序,並在HomeController中,我已經定義一個ActionResult這樣的:對象引用不設置爲一個對象的一個實例在MVC5
public ActionResult BlogRSS()
{
var model = new BlogModel();
string strFeed = "http://webmysite.com/feed";
using (XmlReader reader = XmlReader.Create(strFeed))
{
SyndicationFeed rssData = SyndicationFeed.Load(reader);
model.BlogFeed = rssData;
}
return View(model);
}
然後,對於這個的ActionResult,我創建了一個命名爲BlogRSS
局部視圖,它看起來像這樣:
@model MyApp.Models.BlogModel
@{
if (Model.BlogFeed != null)
{
<ul>
@foreach (var post in Model.BlogFeed.Items.ToList().Take(3))
{
<li><a href='@post.Links.First().Uri' target='_blank'>@post.Title.Text</a></li>
}
</ul>
}
}
我的模式是簡單的定義是這樣的:
public class BlogModel
{
public SyndicationFeed BlogFeed { get; set; }
}
所以,關鍵是我想在我的_Layout.cshtml文件中調用該部分視圖,但是當網站打開時,我會在標題中指定錯誤消息。我想這不是在調用我的BlogRSS
方法。我稱它在_Layout.cshtml這樣的:
<div class="col-md-4">
Blog
<br />
@Html.Partial("BlogRSS")
</div>
我怎樣才能解決這個問題,並確保相應的ActionResult被渲染視圖前還叫什麼名字?
問題是我想在_Layout.cshtml文件中調用它。如果我嘗試使用Html.Action,那麼頁面根本不會打開,它會一直加載。 – tett 2014-12-07 21:57:35
@tett啊,我看到了問題。嘗試在你的動作中使用'return Partial(model)'。 – 2014-12-07 22:00:31