我想在名为ZipTable
的数据表中查询不同的状态名称,并使用alpha-beta顺序列出状态名称,但它不起作用。我错过了什么吗?
public List<String> GetAllStates()
{
ZipTableDataContext dc = new ZipTableDataContext(_connString);
List<String> query = (from z in dc.ZipTables
orderby z.State
select z.State).Distinct().ToList();
return query;
}
答案 0 :(得分:7)
对Distinct()
的调用将撤消您的排序,因为它不保留输入序列顺序。您需要在OrderBy
电话后执行Distinct()
:
List<String> query = dc.ZipTables.Select(z => z.State)
.Distinct()
.OrderBy(s => s)
.ToList();