public static string DropDownList(this HtmlHelper helper, String name, String defaultOptionText, Dictionary<string, object> htmlAttributes, Ekomsys.Common.Enums.Enumurations.DropdownType dropdownType, string selectedValue = "-1", string code = "", String optionName = "") { StringBuilder drpSecurityQuestion = new StringBuilder(); var builder = new TagBuilder("select"); //Setting the additional attributes of dropdown like Id, Class, etc. if (htmlAttributes != null) builder.MergeAttributes(new RouteValueDictionary(htmlAttributes)); //Name of dropdown. builder.MergeAttribute("id", name); if (!string.IsNullOrEmpty(optionName)) builder.MergeAttribute("name", optionName); else builder.MergeAttribute("name", name); StringBuilder selectOptions = new StringBuilder(); //Default item of Dropdown. The value and text for the default item is set from parameters if (!string.IsNullOrEmpty(defaultOptionText)) selectOptions.AppendFormat("<option value='{0}' {1}>{2}</option>", "", "selected", defaultOptionText); switch (dropdownType) { case Ekomsys.Common.Enums.Enumurations.DropdownType.UserType: //Business.Classes.CountryBAL obj = new CountryBAL(); UserTypeBAL obj = new UserTypeBAL(); //IList<CountryLanguageVariant> countryList = obj.GetAllCountries(SessionVariables.LanguageId.Value); IList<tb_UserType> userTypeDBList = obj.GetAllUserType(); AutoMapper.Mapper.CreateMap<tb_UserType, UserTypeModel>(); IList<UserTypeModel> userTypeList=new List<UserTypeModel>(); userTypeList = AutoMapper.Mapper.Map(userTypeDBList, userTypeList); foreach (var option in userTypeList) { selectOptions.AppendFormat("<option"); if (selectedValue == option.UserType_Id.ToString()) selectOptions.AppendFormat(" selected='selected' "); else selectOptions.AppendFormat(" NonEligible='false' "); selectOptions.AppendFormat(" value='" + option.UserType_Id + "'>"); selectOptions.AppendFormat(option.Name); selectOptions.AppendFormat("</option>"); } break; } //Setting the entire <option> to <select> builder.InnerHtml = selectOptions.ToString(); return builder.ToString(TagRenderMode.Normal); }