【发布时间】:2015-11-26 23:50:18
【问题描述】:
我想在编辑模式下选择我选择的项目。我正在使用多选下拉菜单,如下所示:
@Html.DropDownListFor(m => Model.BRAND_ID, Model.BRAND_List, null,
new { @class = "inputbox", multiple = "multiple",@style="height:120px;"})
不,当我在编辑模式下打开表单时,它总是突出显示单个项目而不是多个我的值是来自 DB 的多个。
这是我迄今为止尝试过的:
public List<Brands> BrandsList() {
DataSet ds;
DataTable dt;
List<Brands> BrandsList = new List<Brands>();
ds = Cls_EM_Admin_BRANDS.getBrands();
dt = ds.Tables[0];
//BrandsList.Add(new Brands { Brand_ID = 0, Brand_Name ="Select"});
int i = 0;
foreach (DataRow item in dt.Rows) {
BrandsList.Add(new Brands {
Brand_ID = Convert.ToInt32(item["ID"]),
Brand_Name = item["Title"].ToString()
});
}
return BrandsList;
}
if (ID != null) { ///this condition runs on edit
var objModel_Brands = new EM_BrandAdmin_Model()
.Get_BrandAdmin_DATA(Convert.ToInt32(ID));
BrandsSelect_List = new SelectList(
BrandsList(), "Brand_ID", "Brand_Name", objModel_Brands.BrandID);
objModel_Brands.BRAND_List = BrandsSelect_List;
return view(objModel_Brands)
}
public EM_BrandAdmin_Model Get_BrandAdmin_DATA(Int32 P_ADMIN_ID) {
try {
objModel_BrandAdmin = new EM_BrandAdmin_Model();
cmd = new OracleCommand("SP_BRAND_ADMIN_LIST", cn);
cmd.CommandType = CommandType.StoredProcedure;
cmd.Prepare();
cmd.Parameters.Add(new OracleParameter("P_ADMIN_ID", OracleDbType.Int32))
.Value = P_ADMIN_ID;
cn.Open();
dr = cmd.ExecuteReader();
while (dr.Read()) {
objModel_BrandAdmin = new EM_BrandAdmin_Model();
objModel_BrandAdmin.ADMIN_ID = Convert.ToInt32(dr["ADMIN_ID".ToUpper()]);
objModel_BrandAdmin.BRAND_ID = Convert.ToInt32(dr["BRAND_ID"]);
}
}
catch (Exception ex) {
throw ex;
}
finally {
cn.Close();
if (dr != null) {
dr.Close();
}
}
return objModel_BrandAdmin;
}
【问题讨论】:
-
Bran_ID 只设置单个值..怎么可能多选项目
标签: c# asp.net-mvc-4