我试图将DropDownListFor帮助器与控制器中定义的viewbag绑定.但我收到错误.
查看代码: –
@Html.DropDownListFor(model => model.CurrencyID,ViewBag.CurrencyList as SelectListItem))
控制器代码: –
public ActionResult Create() > { > var content = from p in db.Currency > where p.IsActive == true > orderby p.CurrencyName > select new { p.CurrencyID,p.CurrencyCode }; > > var x = content.ToList().Select(c => new SelectListItem > { > Text = c.CurrencyCode,> Value = c.CurrencyID.ToString(),> Selected = (c.CurrencyID == 68) > }).ToList(); > ViewBag.CurrencyList = x; > > return View(); > }
收到错误: –
System.Web.Mvc.HtmlHelper’不包含’DropDownListFor’的定义和最佳的扩展方法重载’System.Web.Mvc.Html.SelectExtensions.DropDownListFor(System.Web.Mvc.HtmlHelper,System.Linq.Expressions. Expression> System.Collections.Generic.IEnumerable)’有一些无效的参数
解决方法
你需要改变
@Html.DropDownListFor(model => model.CurrencyID,ViewBag.CurrencyList as SelectListItem))
至
@Html.DropDownListFor(model => model.CurrencyID,ViewBag.CurrencyList as IEnumerable<SelectListItem>)