AnsweredMVC Частичный вид со списком
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>
Может кто-нибудь, пожалуйста, помогите мне получить эту работу?
Спасибо dbaseman, я попробовал это, и это вроде как работы, но по какой-то причине он вытягивает частичный вид в виде полного вида с помощью _layout. вы знаете, почему это было бы ??? – Bojangles
@Bojangles Hm. Единственные места, где я знаю, где можно установить макет: 1) в самом представлении, 2) web.config в пути представления или родительском пути – McGarnagle
@Bojangles Извините, я хотел написать ** _ ViewStart.cshtml **. У вас есть один из тех, кто в вашем проекте? Возможно, был установлен макет по умолчанию ... – McGarnagle