【发布时间】:2019-08-05 07:18:40
【问题描述】:
我有一个使用 ASP.NET MVC 制作的 Web 应用程序。 我有一个视图,其中显示了我的对象的 IEnumerable。
这是视图代码
@model IEnumerable<Pimm.RapportiMVC.Models.ViewModel.FoglioGiornalieroDettaglioViewModel>
@foreach (var item in Model)
{
using (Html.BeginForm("Convalida", "FoglioGiornaliero", FormMethod.Post))
{ ........
input type="submit" value="Convalida" ....
.....
}
}
From调用这个ActionResult的提交
[Authorize]
[HttpPost]
public ActionResult Convalida([Bind(Include = "Id_Dettaglio,Id_Foglio,CommessaId,Aiutanti,Automezzo,Convalidato,DataConvalida")] FoglioGiornalieroDettaglioViewModel model)
{
var dip = SessionHelper.Dipendente;
FoglioGiornalieroManager fm = new FoglioGiornalieroManager();
int save =fm.Convalida(dip.matric, model);
if(save>0)
{
ViewBag.message = "Convalida effettuata correttamente";
}
else {
ViewBag.message = "C'è stato un problema con la convalida";
}
return RedirectToAction("Edit", "FoglioGiornaliero", new {id_foglio =model.Id_Foglio});
}
提交调用 ActionResult 但模型被初始化但我的对象的属性没有被重视。
我可以解决....我只需要传递一个 Ienumerable...
非常感谢您的帮助
【问题讨论】:
-
您确定 Include 中提到的属性的名称是正确的吗?如果不使用 include 试试呢?
-
@SalahAkbari 属性名称是正确的,我也尝试过不包含,但它不起作用
-
@Izzy 即使实施您的解决方案也不起作用....实际上问题是我在视图中拥有的模型是我的对象的 IEnumerable 而执行提交的操作只是在选定的对象上。这就是问题所在。我不知道如何将唯一有问题的对象传递给我的 ActionResult .... 这就是我将 Form 放在 Foreach 中的原因
标签: c# asp.net-mvc