Dropdownlistfor对验证错误没有约束力

时间:2015-09-28 12:43:10

标签: model-view-controller null postback dropdown

我是mvc的新人。我有一个如下的观点(它只是我表格的一部分);

    <div class="editor-field">
        @Html.DropDownListFor(model => model.RoutePageID, (List<SelectListItem>)Model.RoutePagesRoutePageIDList)
        @Html.ValidationMessageFor(model => model.RoutePageID)
    </div>

动态绑定的项目。如果我单击“保存”按钮并发送包含错误值的表单以获得验证错误。我收到如下错误;;

具有键&#39; RoutePageID&#39;的ViewData项。属于&#39; System.Int32&#39;但必须属于&#39; IEnumerable&#39;

这是我的Insert Post控制器;

    [HttpPost]
    public ActionResult Insert(CategoryModel _categoryModel)
    {
        if (ModelState.IsValid)
        {
            //blabla
        }
        else
        {
            return View("Insert", _categoryModel);
        }
    }
当我发布它时,

_categoryModel.RoutePagesRoutePageIDList在Controller中为空。我不知道为什么?因为当我第一次打开插入页面时,我填充了_categoryModel.RoutePagesRoutePageIDList属性,然后它在视图中填充下拉列表。但是在发送表单以获取错误之后,属性为null?我真的不明白为什么?我在返回View(&#34; Insert&#34;,_categoryModel)方法上发送相同的模型。为什么它为空?请帮忙:(

0 个答案:

没有答案