2014-06-11 69 views
-2

我有一個名單,我CSHTML像這樣在一個List <SelectListItem>移動一個項目頂端

List<SelectListItem> country = ViewData["Country"] as List<SelectListItem>; 

,基本上我想指定的一個文本「英國」,刪除它,然後插入它在頂部,我有一些代碼,但我無法弄清楚全部。

這裏是我的代碼

//Move British to the top in Nationality 
var british = nationality.Where(x => x.Text == "British").FirstOrDefault(); 
//Not sure how to remove british 
nationality.Insert(0, british); 
+1

'nationality.Remove(british);',但記住要確保它不爲空。 –

+0

由於pswg用'Remove()'和另一個提示使其更簡單,並且具有'nationality.FirstOrDefault(x => x.Text ==「British」)' –

回答

2

你可以這樣來做:

var british = nationality.FirstOrDefault(x => x.Text == "British"); // get item 

nationality.Remove(british); //remove it 

nationality.Insert(0, british); // insert at first 

注:

記住FirstOrDefault()將返回null如果項目沒有在列表中找到。

+2

*「記住FirstOrDeafault()會拋出異常,如果item不是在列表中找到。「*不,它會返回默認值。 – sloth

+0

@sloth更正.. –

相關問題