System.Web.Mvc.SelectList不包含First的定义

问题描述:

我用一个SelectList分配一个ViewBag变量并填充一个DropDownList。 好吧,这很好。System.Web.Mvc.SelectList不包含First的定义

但我想借此机会打印SelectList的第一个项目,但我面对这个错误。

System.Web.Mvc.SelectList不包含第一

的定义,我想这样

@(ViewBag.WhateverVariable.First().Text) 

有一种方法来打印firt一个项目? , 韩国社交协会

+3

您是否添加了LINQ的命名空间? '使用System.Linq;'或'@using System.Linq' – Equalsk

尝试jQuery的,而不是

例如,如果您的下拉/组合的ID是COMBO1 那么代码如下:

var firstValue = $("#combo1").val($("#combo1 option:first").val()); 
<p id="firstVal"><p> 
$("#firstval").html(firstValue); 

ViewBag是一个动态的字典。你应该明确地将它转换为一个SelectList第一,然后你可以调用First()方法

这应该工作

@((ViewBag.WhateverVariable as SelectList).First().Text) 

假设你的操作方法已经设置了SelectListViewBag.WhateverVariable

记住,First方法将在源序列为空时抛出InvalidOperationException异常。所以一定要在非空集合上调用First方法。