我有一个Viewbag,它是我从Controller传递给View的列表.
Viewbag是我案例中的10条记录列表.进入视图后,如果用户点击了save,我想将View的内容传递给[HttpPost] Create控制器,以便我可以创建Viewbag中的记录.我确定如何做到这一点.我已经为1个项目创建了一个新记录,但是如何为多个记录创建它.
Viewbag是我案例中的10条记录列表.进入视图后,如果用户点击了save,我想将View的内容传递给[HttpPost] Create控制器,以便我可以创建Viewbag中的记录.我确定如何做到这一点.我已经为1个项目创建了一个新记录,但是如何为多个记录创建它.
解决方法
以下是使用ViewBag的快速示例.我建议切换并使用模型进行绑定.这是一篇很棒的文章.
Model Binding
public ActionResult Index() { ViewBag.Message = "Welcome to ASP.NET MVC!"; List<string> items = new List<string>(); items.Add("Product1"); items.Add("Product2"); items.Add("Product3"); ViewBag.Items = items; return View(); }
发布方法
[HttpPost] public ActionResult Index(FormCollection collection) { //only selected prodcuts will be in the collection foreach (var product in collection) { } return View(); }
HTML:
@using (Html.BeginForm("Index","Home")) { foreach (var p in ViewBag.Items) { <label for="@p">@p</label> <input type="checkBox" name="@p" /> } <div> <input id='btnSubmit' type="submit" value='submit' /> </div> }