您好我有以下型号:
public class ActiveProducts
{
public int ID { get; set; }
public virtual Product Product { get; set; }
}
对于数据上下文我有:
public DbSet<ActiveProduct> ActiveProducts { get; set; }
我想创建一个控制器和视图来执行CRUD操作
我如何能够为创建和编辑生成视图,以便我有一个产品下拉列表?
我使用了使用模型创建控制器的标准方法,使用CRUD操作并且它没有为create创建任何内容。
答案 0 :(得分:1)
好的,由于Product_ID
包含Products
表的主键值,因此这应该在您的控制器中有效:
public ActionResult Create()
{
ViewBag.Product_ID = new SelectList(db.Product, "ID", "Product");
}
[HttpPost]
public ActionResult Create([Bind(Include = "ID, Product_ID" /*etc*/)] ActiveProducts activeProducts)
{
ViewBag.Product_ID = new SelectList(db.Product, "ID", "Product", activeProducts.Product_ID);
}
然后在你的创建视图中:
<div class="form-group">
@Html.LabelFor(model => model.Product_ID, "Product:", htmlAttributes: new { @class = "control-label col-md-2" })
<div class="col-md-10">
@Html.DropDownList("Product_ID", null, "-- Select Product --", htmlAttributes: new { @class = "form-control" })
@Html.ValidationMessageFor(model => model.Product_ID, "", new { @class = "text-danger" })
</div>
</div>