我使用了用于下拉列表的模型,
> public class Items
> {
> public int itemcategoryid { get; set; }
> public string itemcategory { get; set; }
> public int Itemsubcategoryid { get; set; }
> public string Itemsubcategoryname { get; set; }
> }
和控制器代码下方
> ItemViewModel catVM = new ItemViewModel();
> List<Items> catlist = catVM.GetCategoryInfo();
> ViewBag.categorylist = catlist;
使用HTML代码下方的绑定下拉列表后,该下拉列表已填充并选择默认名称作为itemcategory,但未传递itemcategory的ID,仅传递了POST的itemcategory名称。
@Html.DropDownListFor(model => model.itemcategory, new SelectList(ViewBag.categorylist, "itemcategory", "itemcategory", Model.itemcategory))
如果我在HTML代码下面使用其通过值,但未选择默认名称,则>]
@Html.DropDownListFor(model => model.itemcategory, new SelectList(ViewBag.categorylist, "itemcategoryid", "itemcategory", Model.itemcategory))
使用下面的代码检索数据
using (OracleCommand cmd = new OracleCommand("PS_Category", conn)) { cmd.CommandType = System.Data.CommandType.StoredProcedure; conn.Open(); OracleDataReader reader = cmd.ExecuteReader(); while (reader.Read()) { Items listitems = new Items(); ; listitems.itemcategoryid = Convert.ToInt32(reader["CATID"]); listitems.itemcategory = reader["CATNAME"].ToString(); items.Add(listitems); } }
实际上我想选择默认名称并传递其ID怎么可能呢?
我使用了下拉列表的模型,>公共类Items> {> public int itemcategoryid {get;组; }>公用字符串itemcategory {get;组; }> ...
之前曾在这里回答过,但有些人报告说这对他们不起作用;@Html.DropDownListFor how to set default value