加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

c# – 将我的列表转换为列表

发布时间:2020-12-15 18:30:45 所属栏目:百科 来源:网络整理
导读:我有一个包含十年(从2010年到2020年)的DropDownList,如下所示: var YearList = new Listint(Enumerable.Range(DateTime.Now.Year - 5,((DateTime.Now.Year + 3) - 2008) + 1));ViewBag.YearList = YearList; 但这是我的问题,我希望选择一个默认值,并在我提
我有一个包含十年(从2010年到2020年)的DropDownList,如下所示:
var YearList = new List<int>(Enumerable.Range(DateTime.Now.Year - 5,((DateTime.Now.Year + 3) - 2008) + 1));
ViewBag.YearList = YearList;

但这是我的问题,我希望选择一个默认值,并在我提交信息时保留此值,并希望使用类型List< SelectListItem>因为它更实用.

一旦进入这种类型,我将简单地这样做以保持选定的值:

foreach (SelectListItem item in list)
            if (item.Value == str)
                item.Selected = true;

我怎样才能转换我的List< int>到列表< SelectListItem> ?

解决方法

尝试使用Linq进行转换:
List<SelectListItem> item = YearList.ConvertAll(a =>
                {
                    return new SelectListItem()
                    {
                        Text = a.ToString(),Value = a.ToString(),Selected = false
                    };
                });

然后该项将是SelectListItem的列表

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读