ASP.NETMVC中的“ThereisnoViewDataitemoftype'IEnumerable<SelectListItem>'”如何解决?
创始人
2024-09-19 09:01:06
0

出现这个错误通常是因为在View中使用了SelectList而在Controller中没有传递正确的数据。这可以通过以下两种方法解决:

  1. 在Controller中传递正确的SelectList数据 在Controller中,你需要定义SelectList并将其作为ViewData的一部分进行传递,例如:

public ActionResult Index() { ViewBag.RolesList = new SelectList(db.Roles, "RoleId", "RoleName"); // 这里使用了ViewBag,也可以使用ViewData来传递数据 return View(); }

然后在你的View中使用这个SelectList,例如:

@Html.DropDownListFor(m => m.RoleId, (SelectList)ViewBag.RolesList, "Select a Role")

  1. 使用ViewModel来传递数据 第二种方法是创建一个ViewModel来传递你需要的数据,例如:

public class MyViewModel { public int RoleId { get; set; } public SelectList Roles { get; set; } }

然后在Controller中,你需要创建一个ViewModel实例并将数据填充到它的属性中,例如:

public ActionResult Index() { var model = new MyViewModel { Roles = new SelectList(db.Roles, "RoleId", "RoleName") }; return View(model); }

最后在你的View中使用ViewModel,例如:

@model MyViewModel

@Html.DropDownListFor(m => m.RoleId, Model.Roles, "Select a Role")

相关内容

热门资讯

透视教程书!红龙poker辅助... 透视教程书!红龙poker辅助工具(透视)pokemmo手机辅助软件(辅助)总是存在有插件(哔哩哔哩...
围绕透视问题!wepoker辅... 围绕透视问题!wepoker辅助器下载(透视)闲聚大联盟辅助(一贯存在有辅助软件)-哔哩哔哩1、游戏...
透视安装!安装不了wepoke... 透视安装!安装不了wepoker(透视)逗娱科技碰胡辅助(都是存在有辅助辅助器)-哔哩哔哩1、全新机...
透视诀窍!pokemmo辅助工... 透视诀窍!pokemmo辅助工具(透视)fishpoker透视(辅助)竟然一直总是有插件(哔哩哔哩)...
现场直击!hhpoker可以控... 现场直击!hhpoker可以控制牌吗(透视)多乐跑小程序如何开辅助(本来是真的辅助安装)-哔哩哔哩1...
透视方式!哈糖大菠萝攻略(透视... 透视方式!哈糖大菠萝攻略(透视)约局吧作必弊脚本(辅助)确实有攻略(哔哩哔哩)1、超多福利:超高返利...
网友热议!wepoker私人局... 您好,上饶辅助工具这款游戏可以开挂的,确实是有挂的,需要了解加去威信【136704302】很多玩家在...
透视积累!智星菠萝可以辅助吗(... 透视积累!智星菠萝可以辅助吗(透视)拱趴大菠萝自动计算机器人(辅助)竟然存在有神器(哔哩哔哩)1、下...
透视黑科技!wepoker透视... 透视黑科技!wepoker透视辅助下载(透视)道游拼十辅助器(都是真的有辅助修改器)-哔哩哔哩1、首...
透视大纲!pokerworld... 透视大纲!pokerworld软件(透视)德州辅助工具到底怎么样(辅助)切实一直都是有软件(哔哩哔哩...