【发布时间】:2021-01-01 20:32:03
【问题描述】:
在 Index() 中,我返回带有模型 AnlassDetailModel 的视图,其中我有对象 Anlass 和 List<SelectListItem>,它们都填充了数据。
我将此列表用于视图中表单的下拉列表。
但是,当我要提交表单时,对象Anlass 为空,但下拉列表中的变量具有值。
如何获取对象中包含数据的模型?
型号:
public class AnlassDetailModel
{
public Anlass Anlass { get; set; }
public List<SelectListItem> Kategories = new List<SelectListItem>();
public int KategorieId { get; set; }
}
控制器:
public ActionResult Index()
{
AnlassDetailModel model = new AnlassDetailModel()
{
Anlass = Anlass.GetAnlass(),
Kategories = Kategorie.GetKategorieBezeichnung()
};
return View("~/Views/AnlassDetail.cshtml", model);
}
[HttpPost]
public ActionResult Cat(AnlassDetailModel model)
{
//Here the Model only has value in KategorieId but not in Anlass
if (model.Anlass.Kategories == null)
model.Anlass.Kategories = new List<Kategorie>();
model.Anlass.Kategories.Add(Kategorie.GetKategorieById(model.KategorieId));
return View("~/Views/AnlassDetail.cshtml", model);
}
查看:
<div>
@using (Html.BeginForm("Cat", "Anlass", FormMethod.Post))
{
@Html.DropDownListFor(m => m.KategorieId, new SelectList(Model.Kategories, "Value", "Text"), "Auswählen")
<input type="submit" value="Hinzufügen" />
}
</div>
【问题讨论】:
-
“对象分析为空”。我在您的视图中没有看到任何 Anlass 绑定控件。为什么 Anlass 不应该为空?
标签: c# asp.net .net asp.net-mvc