MVC DropdownlistFor设置选择的值不起作用?c#

时间:2017-08-11 07:10:28

标签: c# asp.net-mvc

我正在使用此代码设置所选值

foreach (var item in clsObj.Branch_SName)
{
    if (item.Value.Split('|')[5] == Session["Branch_ID"].ToString())
    {
        item.Selected = true;  //debugger comes here ok but not set value as selected 
        break;
    }
} 

但我返回视图返回视图

return View(clsObj);

绑定下拉为

@Html.DropDownListFor(m => m.Branch_Code, Model.Branch_SName)

但在调试模型选择列表时未设置选定值,其中返回clsObj.Branch_SName没有选定值。为什么还告诉我下拉列表更改事件?

2 个答案:

答案 0 :(得分:0)

List<SelectListItem> lst = GENERIC.ToSelectListItem(ds_1.Tables[0], "Branch_SName", "Branch_Code"); 

var selected = lst.SingleOrDefault(item => item.Value.Split('|')[5] == Session["pUser_Branch_ID"].ToString()); 

selected.Selected = true; //important
clsObj.Branch_SName = new SelectList(lst, "Value", "Text", selected); //important
clsObj.Branch_Code = selected.Value;//important

这可以选择分支代码并选择真实的

答案 1 :(得分:0)

实际上,您可以在Branch_Code中设置一个值,该值将作为选定值绑定到模型。所以你需要像这样做。

clsObj.Branch_Code= selectedBranCode; //You need to perform filter operation from your collection.