English 中文(简体)
ASP.Net MVC - 关联对象的下拉列表
原标题:
  • 时间:2009-03-09 18:19:12
  •  标签:

我在我的应用程序中有两个模型:ProductProductTypeProduct有一个引用到ProductType(在数据库中它被命名为ProductTypeId),而ProductType有两个列(IdName)。

我可以使用以下代码正确填充下拉菜单并在论坛上显示:

Controller:

var typeList = new SelectList(_entities.ProductType.ToList(), "Id", "Name");
ViewData["Types"] = typeList; 

View:

<%= Html.DropDownList("ProductType", (IEnumerable<SelectListItem>) ViewData["Types"]) %>

然而我的问题在于它没有在控制器中更新模型。如果我保留原样,则由于视图中的ProductType字符串,ModelState无效。但是,如果我将其更改为其他任何内容,则似乎无法在控制器中引用它。

问题回答

我刚刚尝试了同样的事情,它对我来说非常好用。

控制器 (Kòngzhì qì)

 public ActionResult Create()
    {
    configuratorDataContext dc = new configuratorDataContext();
    SelectList typelist = new SelectList(dc.Product_types.ToList(), "id", "Name");
    ViewData["Product_Types"] = typelist;
    ViewData.Model = new Product(); 
    return View();
    } 

    [AcceptVerbs(HttpVerbs.Post)]
    public ActionResult Create(Product createProduct)
    {
    // createProduct here contains correct type_id wich 
    }

查看

  <%= Html.DropDownList("type_id", (IEnumerable<SelectListItem>) ViewData["Product_Types"])%>




相关问题
热门标签