You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

ASP.NET MVC编辑视图中Model传递数据到Partial View为空错误求解

问题原因

你的代码错误出在循环渲染分部视图时,传递的模型参数和分部视图预期的模型不匹配:

  • 你遍历Model.GeneralItmsList得到单个条目item,但调用Html.RenderAction时传递的是完整的列表Model.GeneralItmsList.ToList()
  • 你的分部视图声明的模型是单个Asp_PASMVC.Models.GeneralItms对象,无法匹配传入的列表,自然无法渲染出数据,所以只会生成对应条数的空行。
修复方案

方案1:直接渲染分部视图(无需调用Action,适合无额外逻辑的场景)

直接用Html.RenderPartial传递当前遍历到的单个条目即可,修改主视图代码:

<ul id="RequItms" style="list-style-type: none">
    @if (Model != null && Model.GeneralItmsList != null)
    {
        foreach (var item in Model.GeneralItmsList)
        {
            Html.RenderPartial("GeneralItmsPartialView", item);
        }
    }
</ul>

方案2:保留RenderAction调用的修改方法

如果你的分部视图需要在Action中做额外的逻辑处理,需要做两处修改:

  1. 修改主视图中RenderAction的调用参数,传入当前单个条目:
Html.RenderAction("GeneralItmsPartialView", "AppRequests", new { item = item });
  1. 修改AppRequests控制器中的GeneralItmsPartialView方法,接收参数并传递给视图:
public ActionResult GeneralItmsPartialView(GeneralItms item)
{
    // 此处可添加你需要的额外处理逻辑
    return PartialView(item);
}

修改后重新运行即可正确填充每条记录的数据。

内容的提问来源于stack exchange,提问作者user1983377

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 15:15:03