asp.net mvc html.dropdownlist ошибка - PullRequest
1 голос
/ 02 июля 2010

CS1928: «System.Web.Mvc.HtmlHelper» не содержит определения для «DropDownList» и лучшей перегрузки метода расширения «System.Web.Mvc.Html.SelectExtensions.DropDownList (System.Web.Mvc.HtmlHelper, строка, строка) 'имеет недопустимые аргументы

Я получаю роли пользователя от поставщика услуг, а затем прошу пользователя выбрать роль. роли находятся в раскрывающемся списке на странице регистрации.

public ActionResult ChangePassword() 
        {

            ViewData["PasswordLength"] = MembershipService.MinPasswordLength;
            var roles = Roles.GetAllRoles().ToList();       
            ViewData["Roles"] = new SelectList(roles);

            return View();
        }

<p>
               <%= Html.DropDownList("Userrole",((SelectList)ViewData["Roles"]).Items,"--Select One---") %>
                </p>

Ответы [ 2 ]

1 голос
/ 02 июля 2010

Попробуйте

  <%= Html.DropDownList("Userrole",((SelectList)ViewData["Roles"]),"--Select One---") %>

обновление

Есть что-то еще, что вызывает проблему (есть ли у вас другие расширения для DropDownlist?)

У меня работает следующее:

Действие

 public ActionResult About()
        {
            var x = new List<string>
            {
                "A", "B", "C"
            };
            var y = new SelectList(x);
            ViewData["z"] = y;
            return View();
        }

Просмотр

 <%= Html.DropDownList("Userrole",((SelectList)ViewData["z"]),"--Select One---") %>
0 голосов
/ 23 сентября 2011

код контроллера

  public ActionResult About()
    {
        var x = new []
        {
            "A", "B", "C"
        };
        var y = new SelectList(x);
        ViewData["z"] = y;
        return View();
    } 

это ваш код просмотра Вы пытаетесь это работает нормально

<%: Html.DropDownList("Userrole", ViewData["z"] as SelectList,"--selectone--")%>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...