我使用过去经常使用的方法发布一个非常简单的表单.显示我的代码可能更容易,而不是输入冗长的解释.这是HTML:
<% Html.BeginForm("CreateMarketingType", "ListMaintenance"); %><% Html.EndForm();%>
<%foreach (MarketingType marketingType in ViewData.Model.MarketingTypes) %> <%{ %> Marketing Type Id Marketing Type Name <%} %> <%= marketingType.MarketingTypeId.ToString() %> <%= marketingType.MarketingTypeName %>
这是控制器代码:
[AcceptVerbs(HttpVerbs.Post)] public ActionResult CreateMarketingType(FormCollection form) { string newMarketingTypeName = Request.Form["txtNewMarketingTypeName"].ToString(); MarketingType newMarketingType = new MarketingType() { MarketingTypeName = newMarketingTypeName }; _marketingTypeRepository.AddNewMarketingType(newMarketingType); return View("ListMaintenance", GetModel()); }
提交按钮发布表单,并调用该方法,但我的参数中定义的表单对象为空.我也试过Request.Form,我得到了相同的结果.我在这里错过了什么吗?
您的所有输入都没有名称属性.没有名字=不在FormCollection中.