Как привязать выпадающий список для использования viewdata
На мой взгляд, я написал следующий код.
<pre lang="c#"> <%Html.DropDownListFor("ddlCity",new SelectList(ViewData["City"].ToString(),"Value","Text"));%>
и следующий код в контроллере
<pre lang="c#"> public ActionResult Index() { DbConnect objdb = new DbConnect(); DataTable dt= objdb.ExecuteDataset("usp_allCities"); List<SelectListItem> cityList=new List<SelectListItem>(); for (int i = 0; i < dt.Rows.Count; i++) { cityList.Add(new SelectListItem { Text = dt.Rows[i]["CityName"].ToString(), Value = dt.Rows[i]["CityId"].ToString() }); } ViewData["City"] = (IEnumerable<SelectListItem>)cityList; return View(ViewData); }
Я не могу привязать выпадающий список. Может ли кто-нибудь подсказать мне, что я могу сделать?
Браузер выдает следующую ошибку -
CS0411: аргументы типа для метода 'System.Web.Mvc.Html.SelectExtensions.DropDownListFor&ЛТ;модели tmodel,tproperty&ГТ;(системы.Веб.В MVC.HtmlHelper&ЛТ;модели tmodel&ГТ;, системы.В LINQ.Выражения.Выражение&ЛТ;система.Функ&ГТ;&ЛТ;модели tmodel,tproperty&ГТ;&ГТ;, системы.Коллекции.Общий.IEnumerable<system.web.mvc.selectlistitem>)' не может быть выведен из использования. Попробуйте явно указать аргументы типа.