We used to bind model class in ASP.NET MVC dropdownlist like below

<%= Html.DropDownList("ApprovalStatus", Model.ApprovalStatus, new { @class = "select", onchange = "javascript:CheckApprovalStatus(this);" })%>

The HTML output of the above is

<select class="select" id="ApprovalStatus" name="ApprovalStatus" >
<option value="Approved">Approved</option>
<option value="Rejected">Rejected</option>
<option value="InProgress">In Progress</option>
</select>

What if you would like to have Keys & Value separately and like below and if the model class is KeyValuePair

<select class="select" id="Country" name="Country">
<option value="US">United States</option>
<option value="IN">India</option>
<option value="SG">Singapore</option>
</select>

then it should bind with Keys & Values.

CountryList = new SelectList(Country.ToList(),"Key","Value");

Happy Coding!


 
Categories: ASP.NET MVC