Tec*_*Guy 8 asp.net-mvc entity-framework asp.net-mvc-4
我正在开发MVC4和实体框架Application.I想填充DropDownList,我想将Category List绑定到Dodropdown列表
存储库代码
IList<Category> GetCategory();
Run Code Online (Sandbox Code Playgroud)
知识库
public IList<Category> GetCategory()
{
return (from c in context.Categories
select c).ToList();
}
Run Code Online (Sandbox Code Playgroud)
调节器
public IList<Category> GetCategory()
{
return icategoryRepository.GetCategory();
}
Run Code Online (Sandbox Code Playgroud)
之后我就在这里.如何将数据绑定到Dropdownlist?
我在这里查看代码
<label for="ProductType">Product Type</label>
@Html.DropDownListFor(m => m.ProductType,new List<SelectListItem>)
Run Code Online (Sandbox Code Playgroud)
我的控制器代码
public ActionResult AddProduct()
{
return View();
}
Run Code Online (Sandbox Code Playgroud)
如何使用ViewBag?
视图
<label for="ProductType">Product Type</label>
@Html.DropDownListFor(m => m.ProductType,ViewBag.ListOfCategories)
Run Code Online (Sandbox Code Playgroud)
调节器
public ActionResult AddProduct()
{
ViewBag.ListOfCategories = GetCategory();
return View();
}
Run Code Online (Sandbox Code Playgroud)
你可以这样做:
@Html.DropDownListFor(x => x.IdCategory, ViewBag.Categories)
Run Code Online (Sandbox Code Playgroud)
但我建议你避免ViewBag/ViewData并从你的viewmodel中获利:
public ActionResult AddProduct()
{
var model = new TestModel();
//This is just a example, but I advise you to turn your IList in a SelectListItem, for view is more easy to work. Your List Categories will be like this hardcoded:
model.ListCategories= new SelectList(new[]
{
new { Value = "1", Text = "Category 1" },
new { Value = "2", Text = "Category 2" },
new { Value = "3", Text = "Category 3" },
}, "Value", "Text");
return View(model);
Run Code Online (Sandbox Code Playgroud)
}
并在视图中:
@Html.DropDownListFor(x => x.IdCategory, Model.ListCategories)
Run Code Online (Sandbox Code Playgroud)
我希望我有所帮助
| 归档时间: |
|
| 查看次数: |
37600 次 |
| 最近记录: |