В моем контроллере я создаю список SelectListItems и сохраняю его в ViewData . Когда я читаю ViewData в моем View, это дает мне ошибку о неправильных типах. Если я приведу типы вручную, это работает, но кажется, что это должно произойти автоматически. Может кто-нибудь объяснить?
Контроллер
enum TitleEnum { Mr, Ms, Mrs, Dr };
var titles = new List<SelectListItem>();
foreach(var t in Enum.GetValues(typeof(TitleEnum)))
titles.Add(new SelectListItem()
{ Value = t.ToString(), Text = t.ToString() });
ViewData["TitleList"] = titles;
View
// Doesn't work
Html.DropDownListFor(x => x.Title, ViewData["TitleList"])
// This Works
Html.DropDownListFor(x => x.Title, (List<SelectListItem>) ViewData["TitleList"])