回答済み
Dbaseman は正しかったのですが、すべてを単純化するために、モーダルは必要ありません。コードは次のようになります。
[ChildActionOnly]
public ActionResult RecentNews()
{
return PartialView(db.Articles.ToList());
}
と
@{Html.RenderAction("RecentNews");}
以下は、機能していなかった私の古いコードです
次の作業を行うのに問題があります。正しい軌道に乗っているかどうかさえわかりません。ビューを作成するとコードはすべて正常に機能しますが、部分ビューを作成して他のビューに追加すると機能しません。何を試しても、エラーが発生するようです:オブジェクト参照がオブジェクトのインスタンスに設定されていません。
私の見解では:
@Html.Partial("RecentNews")
私のアクションは次のようになります。
public ActionResult RecentNews()
{
var rn = (from m in db.Articles
select new RecentNews
{
ArticleHeading = m.ArticleHeading
});
return View(rn);
//return View(db.Articles.ToList());
}
私のモーダル:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
namespace melbournesportsstadium.Models
{
public class RecentNews
{
public string ArticleHeading { get; set; }
}
}
そして私のRecentNews.cshtml:
@model List<melbournesportsstadium.Models.RecentNews>
<table>
@foreach (var item in Model) {
<tr>
<td>
@Html.DisplayFor(modelItem => item.ArticleHeading)
</td>
</tr>
}
</table>
誰かがこれを機能させるのを手伝ってくれますか?