c# - 发布后检索具有多个列表对象的 ViewModel
问题描述
我有一个像这样的视图模型类:
public class ViewModel
{
public string VendorService { get; set; }
public List<ResponseView> responseList { get; set; }
}
控制器具有获取和发布编辑操作:
public ActionResult Edit(int? id)
{
List<ResponseView> resp = getResponseView(id); //get the list of ResponseView objects.
ViewModel view = new ViewModel();
view.responseList = resp;
view.VendorService = "Car Manufacturer";
return View(view);
}
[HttpPost]
[ValidateAntiForgeryToken]
public ActionResult Edit(ViewModel view)
{
if (ModelState.IsValid)
{
List<ResponseView> respList = new List<ResponseView>();
respList = view.responseList;
foreach(ResponseView resp in respList)
{
Debug.WriteLine(resp.Question);
}
return RedirectToAction("editConfirm");
}
return View("Index");
}
编辑.cshtml
@model Tools.Models.ViewModel
@{
List<Tools.Models.ResponseView> respList= Model.responseList as List<Tools.Models.ResponseView;
}
@foreach (var item in respList)
{
<div class="col-md-5">
@Html.EditorFor(model => item.Response, "" } })
@Html.ValidationMessageFor(model => item.Response, "", "" })
</div>
}
我能够根据需要在视图模型中显示视图和所有数据。但是当我尝试在下面的 foreach 行中检索我的 post 操作中的响应时,我得到了一个空指针引用。
List<ResponseView> respList = new List<ResponseView>();
respList = view.responseList;
foreach(ResponseView resp in respList)
{
Debug.WriteLine(resp.Response);
}
解决方案
你必须for
改用foreach
. 请试试这个,
@for (int i = 0; i < Model.responseList.Count; ++i) {
<div>
@Html.EditorFor(model => Model.responseList[i].Response, "")
</div>
推荐阅读
- next.js - Script Component does not work in next.js
- python-3.x - Scraped data displayed differently as data frame and differently when calling single cell
- arrays - 在 React 中传递对象数组中的嵌套对象的正确方法是什么?
- flutter - 使用 PageView.Builder 时,水平视口被赋予了无限的高度
- python - Processing multiple files on multiple cores not working
- java - Parsing unresolved requirement Eclipse 2021-03 error
- powershell - Visual Studio Code cannot import assemblies containing Hyper-V data types to build PowerShell objects
- python - 如何为 sql alchemy 创建一个显示同一个表中其他列的平均值的列?
- automation - 如何自动刷新网页、展开 + 菜单并向下滚动到该菜单?
- android - 如何让 NestedScrollView 和 RecyclerView 一起滚动?