我有以下列表keyvaluepair
var countryList = new List<KeyValuePair<string,int>>();
然后我用db这样的while循环填充
countryList.Add(new KeyValuePair<string, int>("cname",1));
然后我想用linq查询它并同时订购它,我有这个
var lst = from s in countryList
orderby s.[0]
select s;
你可以猜测它不起作用,我知道为什么它是s。[0]但有人能告诉我正确的语法是什么吗?
感谢
答案 0 :(得分:1)
var lst = from s in countryList
orderby s.Key
select s;
答案 1 :(得分:1)
我会用一行来代替
var sortedCountryList = countryList.OrderBy(s=>s.Key);
如果您只想要列表中的国家/地区名称
var sortedCountryList = countryList.OrderBy(s=>s.Key).Select(s=>s.Value);