按3列排序值String.Length



我想按3列值的长度订购DataTableCC。只有一个是有效的:

IEnumerable<DataRow> preCC = from r in CC.AsEnumerable()
orderby r.Field<string>("Col_1").Length descending
select r;

但我需要同时通过r.Field<string>("Col_1").Lengthr.Field<string>("Col_2").Lengthr.Field<string>("Col_3").Length订购。

您可以使用ThenBy方法,类似于以下方法:

CC.AsEnumerable()
.OrderByDescending(c => c.r.Field<string>("Col_1").Length)
.ThenByDescending(c => OrderByDescending(c => c.r.Field<string>("Col_2").Length))
.ThenByDescending(c => OrderByDescending(c => c.r.Field<string>("Col_3").Length))

最新更新