我想用Excel方式对3列进行排序,即对第一列进行排序,对于在第一列中排序的每个元素,我将对第二列进行排序,依此类推。假设我首先按字母顺序排序国家,然后对于每个国家/地区,我按字母顺序排序城市。我如何使用Linq2Sql?
答案 0 :(得分:2)
你可以将一堆排序串起来。
您需要使用OrderBy
和ThenBy
。
您可以将它们链接在一起以进行延迟排序,直到您执行ToList
。
List<YourData> places = GetPlaces();
List<YourData> sortedPlaces = places.OrderBy(p => p.Country).
ThenBy(c => c.City).
ThenBy(s => s.SomethingElse).
ToList();
使用查询语法:
var places = from p in db.Places
orderby p.Country, p.City, p.SomethingElse
select p;