位置:首页 > 软件操作教程 > 编程开发 > C# > 问题详情

C# 排序查询结果

提问人:刘团圆发布时间:2020-12-10

    用where子句(或者WhereO方法调用)找到了感兴趣的数据后,LINQ还可以方便地对得到的数据执行进一步处理,例如,重新排列结果的顺序。下面的示例将按字母顺序给第一个查询的结果排序。


试一试给查询结果排序:BeginningCSharp7_22_5_OrderQueryResults\Program.cs

按照下面的步骤在Visual Studio 2017中创建示例。

(1)可以修改QuerySyntax示例,或者在C:\BeginningCSharp7\Chapter22目录中创建一个新的控制台应用程序项目 BeginningCSharp7_22_5_OrderQueryResults。

(2)打开主源文件Program.cs。与以前一样,Visual Studio 2017会自动在Program.cs 中包含using System. Linq; 名称空间指令。

(3)在Progranj.cs的Main()方法中添加如下代码:

static void Main{string[] args)

{

        string[] names = { "Alonso", "Zheng", "Smith", "Jones", "Smythe",

"Small", "Ruiz", "Hsieh", "Jorgenson", "Ilyich11," Singh", "Samba", "Fatimah" }; 

        var queryResults = 

            from n in names 

            where n.StartsWith("S") 

            orderby n 

            select n;

        WriteLine("Names beginning with S ordered alphabetically:"); 

        foreach {var item in queryResults) {

            WriteLine(item);

        }

        Write ("Program finished, press Enter/Return to continue:");

        ReadLine();

}

(4)编译并执行程序。结果是以S开头的names列表,且按字母顺序排序,如下所示:

Names beginning with S:

Samba

Singh

Small

Smith

Smythe

Program finished, press Enter/Return to continue:


示例说明

这个程序与前一个程序几乎相同,只是在查询语句中增加了一行代码

var queryResults =

            from n in names 

            where n.StartsWith("S") 

            orderby n 

            select n;

继续查找其他问题的答案?

相关视频回答
回复(0)
返回顶部