У меня есть класс Enum, и мне нужно связать выпадающий список в asp.net MVC4 (используя механизм просмотра Razor). Я могу связать выпадающий список и показать его в поле зрения. Но я не мог показать выбранный элемент в режиме редактирования. Пожалуйста, помогите мне. Я Хавин следующий кодСвязывание выпадающего списка из Enum в C#
мой ViewModelclass
public class UserViewModel
{
public string AccountId { get; set; }
[Required]
[Display(Name="First Name")]
public String FirstName { get; set; }
[Display(Name="Middle Name")]
public String MiddleName { get; set; }
[Required]
[Display(Name="Last Name")]
public String LastName { get; set; }
public String UserRoles { get; set; }
}
и Enum класс,
public enum UserType // Office User Types
{
Officer = 1,
Administrator = 2,
Recruiter = 3
}
и я использую следующий код в мой контроллер,
Dictionary<string, string> rolename = Enum.GetValues(typeof(UserType))
.Cast<UserType>()
.Select(v => v.ToString())
.ToDictionary<string, string>(v => v.ToString());
ViewBag.Roles = rolename;
return View();
и мой взгляд есть,
@Html.DropDownListFor(model => model.UserRoles,new SelectList(ViewBag.Roles, "Key", "Value",Model.UserRoles.ToString()), new { id = "UserRoles" })
Пожалуйста, помогите мне в чем моя ошибка и как отобразить выбранное значение в выпадающем списке в режиме редактирования.
Может быть, что 'UserRoles' в вашей модели «Сотрудник», «Администратор» и т. д., а ключ для раскрывающегося списка - 1, 2, 3 и т. д.? – Kane