我需要根据列对EF中的结果集进行排序,该列可以在某些值中包含..我希望结果按是否包含.进行分组,然后按名称排序.

给定一列中的以下数据:

6010
6020
6.16.30
7030
6.16.40
7.15.20

带有.OrderBy(x=>x.Column)的结果返回以下内容:

6.16.30
6.16.40
6010
6020
7.15.20
7030

但是,我想对包含的每个结果进行分组.并按行业分类如下:

6.16.30
6.16.40
7.15.20
6010
6020
7030

我如何使用Linq来实现这一点?

推荐答案

这是一辆possible solution:

using System;
using System.Collections.Generic;
using System.Linq;
                    
public class Program
{
    public static void Main()
    {
        var myList = new List<string>{"6010", "6020", "6.16.30", "7030", "6.16.40", "7.15.20"};
        var result = myList.Select(i => new { Item = i , Counter = i.Count(j => j == '.')}).OrderByDescending(i => i.Counter).ThenBy(i => i.Item).Select(i => i.Item).ToList();
        Console.WriteLine(string.Join('\n', result));
    }
}

Csharp相关问答推荐

如何使用Automapper映射两个嵌套列表

EF Core:看不到任何查询日志(log)?

FromServices不使用WebAppliationFactory程序>

PredicateBuilder不是循环工作,而是手动工作

子组件:如何根据另一个组件的状态启用输入

EF Core 8—应用客户端投影后无法转换集操作

在发布表单时绑定包含附加(嵌套)列表的对象列表的正确语法是什么

dotnet集合中内部数组的局部变量副本的用途是什么?'

Blazor EventCallback<;MyType<;T>;>;

应用程序启动器,可 Select 物理屏幕

ASP.NET Core AutoMapper:如何解决错误 CS0121调用在以下方法或属性之间不明确

MS Graph v5.42.0:在寻呼消息时更改页面大小

在IAsyncEnumerable上先调用,然后跳过(1)可以吗?

Swagger没有显示int?可以为空

如何使用用于VS代码的.NET Maui扩展在我的iOS/Android设备或模拟器上进行调试?

如何正确处置所有动态控件?

用于请求用户返回列表的C#Google API

未显示详细信息的弹出对话框

为什么当我try 为玩家角色设置动画时,没有从文件夹中拉出正确的图像?

如何消除Visual Studio错误,因为它不识别集合表达式的新C#12语法?