我在剃刀以下声明:下拉列表中的Razor默认选择?
@Html.DropDownList("SelectedRole", ViewBag.RolesEdit as List<SelectListItem>, ViewBag.CurrentUserRole as string, new { @class = "form-control" })
,这导致下拉,看起来在页面加载如下:
当我点击下拉箭头,我看到:
所以基本上,用户角色是重复的。我怎样才能改变这一点,以便它不是创建一个新的重复元素,而是默认它应该是的元素?基本上,因为ViewBag.RolesEdit
是一个列表,并且ViewBag.CurrentUserRole
保证有一个元素等于上述列表中的一个项目,我如何循环访问列表来比较对方并设置默认值?
谢谢。
你可能想看看这个【答案】(HTTP: //stackoverflow.com/a/37819577/296861)。 – Win
将CurrentUserRole设置为文本RegularUser还是设置为对应于RegularUser的值? –
@ stephen.vakil它被设置为控制器中的'text',如下所示:'ViewBag.CurrentUserRole = user.UserRole();''user'是Identity框架中的一种用户类型。 – ITWorker