MVC - 在ViewModel中设置SelectList的选定值

时间:2015-11-26 07:01:25

标签: c# asp.net-mvc selectlist

在没有选择值的情况下实例化后,如何设置SelectList的selectedvalue属性。

控制器

var _walkInnVM = new WalkInnVM
{        
    ProspectHandledEmpList = new SelectList(_db.Employees
        .AsEnumerable()
        .Where(e => e.Id == Int32.Parse(Session["LoggedUserId"].ToString()))
        .ToList(), "Id", "Name")       
};

HTML

@Html.DropDownListFor(m => m.ProspectHandledEmpID,
    Model.ProspectHandledEmpList, "", 
    new { @class = "form-control select2 ", @id = "ddlProspectHandled" })

1 个答案:

答案 0 :(得分:1)

在将模型传递给视图

之前,您需要在模型中设置ProspectHandledEmpID的值
var _walkInnVM = new WalkInnVM
{
    ProspectHandledEmpID = someValue, // add this
    ProspectHandledEmpList = new SelectList(_db.Employees.AsEnumerable()
      .Where(e => e.Id == Int32.Parse(Session["LoggedUserId"].ToString())), "Id", "Name")       
};

如果db.Employees包含Id值为1到10的项目并且您设置了值ProspectHandledEmpID = 3,则在首次生成视图时将选择第3个选项。