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



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章