MVC dropdownist绑定list之后除去list中的重复项

在dropdownlist绑定数据库的时候,经常会有一些重复项需要删除,结合之前做二阶联动时的案例对程式做了一下修改:

model:

性别:@Html.DropDownList("SEX", @ViewData["SEX"] as IEnumerable<SelectListItem>,"--Please Choose--")

性别_不重复:  @Html.DropDownList("SEX_SEL", @ViewData["SEX_SEL"] as IEnumerable<SelectListItem>, "--Please Choose--")


contoller:

    public ActionResult Index()
        {
            
          List<namelist> llNameList = buildNameList();   //模拟数据源
         ViewData["SEX"]=llNameList.Select(i=>new SelectListItem{Value=i.sex,Text=i.sex});
            //增加code
         Dictionary<string, int> dic = new Dictionary<string, int>();
         int index = 1;
         for (int _count = 0; _count < llNameList.Count; _count++)
         {
             if (!dic.ContainsKey(llNameList[_count].sex))
             {
                 dic.Add(llNameList[_count].sex, index++);
             }
         }
         ViewData["SEX_SEL"] = dic.ToList().Select(i => new SelectListItem { Value = i.Key.ToString(),Text=i.Key.ToString()});
            return View();

        }

效果截图:


这里主要用到了dictionary和containskey结合,检索之后再查询制定键,关于dictionary说明,可参见https://msdn.microsoft.com/zh-cn/library/xfhwa508(VS.80).aspx,containskey可参见https://msdn.microsoft.com/zh-cn/library/system.collections.hashtable.containskey(v=VS.80).aspx



  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值