gpt4 book ai didi

c# - 使用局部 View

转载 作者:太空宇宙 更新时间:2023-11-03 23:35:55 25 4
gpt4 key购买 nike

我正在尝试了解如何制作局部 View 。到目前为止,我有以下部分 View ,称为“_News”:

@model Site.Services.News.NewsItem

<div class="bs-callout bs-callout-primary">
<h2>
@Html.DisplayFor(model => item.Title)
</h2>
</div>

然后在 Controller 中我有:

@model IEnumerable<Site.Services.News.NewsItem> - Does this belong here?

...other controller code here...

@foreach(var item in Model)
{
Html.Partial("_News", item);
}

但是当我尝试运行应用程序时出现“NullReferenceException”。我做错了什么?

根据评论编辑:

        public ActionResult Index()
{
NewsReader newsReader = new NewsReader();
var newsItems = newsReader.GetNewsItems();


return View(newsItems);
}

最佳答案

@model Site.Services.News.NewsItem

<div class="bs-callout bs-callout-primary">
<h2>
@Html.DisplayFor(model => model.Title)
</h2>
</div>

您的代码中存在语法错误,它应该读取 model.Title,而不是 item.Title,因为您将模型称为 model 在 lambda 表达式中。

即这是一样的:@Html.DisplayFor(x => x.Title)

编辑:

您还需要在 Html.Partial 之前放置一个@符号

@foreach(var item in Model)
{
@Html.Partial("_News", item);
}

参见:Html.Partial not rendering partial view

关于c# - 使用局部 View ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30608554/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com