0
请给我一些答案!我总是有这个麻烦! 这是我的控制器:将一个SelectList值绑定到Post Action
public ActionResult Create()
{
IEnumerable<SelectListItem> items =
_categoryService.GetAllCategory().Select(c => new SelectListItem
{
Value = c.Id.ToString(),
Text = c.Name
});
ViewBag.Categories = items;
return View();
}
[HttpPost]
public ActionResult Create(ProductViewModel productViewModel,Guid categoryId)
{
if (ModelState.IsValid)
{
_productService.Create(productViewModel);
}
return View();
}
这是我的看法:
@model Statos.Service.Products.ProductViewModel
@{
ViewBag.Title = "Create";
}
<fieldset>
@using (Html.BeginForm())
{
<div>
@Html.LabelFor(product => product.Name)
@Html.TextBoxFor(Product => Product.Name)
</div>
<div>
@Html.LabelFor(product => product.Brand)
@Html.TextBoxFor(product => product.Brand)
</div>
<div>
@Html.LabelFor(product => product.Category)
@Html.DropDownList("categoryId", (IEnumerable<SelectListItem>)ViewBag.Categories)
</div>
<div>
@Html.LabelFor(product => product.Price)
@Html.TextBoxFor(product => product.Price)
</div>
<div>
@Html.LabelFor(product => product.Description)
@Html.TextBoxFor(product => product.Description)
</div>
<div>
<input type="submit" value="Add" />
</div>
}
</fieldset>
现在我怎样才能绑定类别才能发布行动,提交页面后,我得到这个错误: “没有的ViewData具有'categoryId'键的'IEnumerable'类型的项目。 那我该怎么办?你是以下