{"id":21090,"date":"2024-03-15T21:29:07","date_gmt":"2024-03-15T21:29:07","guid":{"rendered":"https:\/\/www.silicloud.com\/blog\/how-to-sort-within-a-group-after-grouping-in-linq\/"},"modified":"2024-03-21T19:39:25","modified_gmt":"2024-03-21T19:39:25","slug":"how-to-sort-within-a-group-after-grouping-in-linq","status":"publish","type":"post","link":"https:\/\/www.silicloud.com\/blog\/how-to-sort-within-a-group-after-grouping-in-linq\/","title":{"rendered":"How to sort within a group after grouping in LINQ?"},"content":{"rendered":"<p>In LINQ, you can use the OrderBy or OrderByDescending methods to sort the results after grouping.<\/p>\n<p>You can write a LINQ query to group a list of students by class and sort them by name within each class.<\/p>\n<pre class=\"post-pre\"><code><span class=\"hljs-keyword\">var<\/span> students = <span class=\"hljs-keyword\">new<\/span> List&lt;Student&gt;();\r\n\r\n<span class=\"hljs-comment\">\/\/ \u5206\u7ec4\u5e76\u5728\u7ec4\u5185\u6392\u5e8f<\/span>\r\n<span class=\"hljs-keyword\">var<\/span> groupedStudents = students\r\n    .GroupBy(s =&gt; s.Class)\r\n    .Select(g =&gt; <span class=\"hljs-keyword\">new<\/span>\r\n    {\r\n        Class = g.Key,\r\n        Students = g.OrderBy(s =&gt; s.Name)  <span class=\"hljs-comment\">\/\/ \u5728\u7ec4\u5185\u6309\u59d3\u540d\u6392\u5e8f<\/span>\r\n    });\r\n\r\n<span class=\"hljs-comment\">\/\/ \u904d\u5386\u7ed3\u679c<\/span>\r\n<span class=\"hljs-keyword\">foreach<\/span>(<span class=\"hljs-keyword\">var<\/span> <span class=\"hljs-keyword\">group<\/span> <span class=\"hljs-keyword\">in<\/span> groupedStudents)\r\n{\r\n    Console.WriteLine(<span class=\"hljs-string\">\"\u73ed\u7ea7\uff1a\"<\/span> + <span class=\"hljs-keyword\">group<\/span>.Class);\r\n    <span class=\"hljs-keyword\">foreach<\/span>(<span class=\"hljs-keyword\">var<\/span> student <span class=\"hljs-keyword\">in<\/span> <span class=\"hljs-keyword\">group<\/span>.Students)\r\n    {\r\n        Console.WriteLine(<span class=\"hljs-string\">\"\u59d3\u540d\uff1a\"<\/span> + student.Name);\r\n    }\r\n}\r\n<\/code><\/pre>\n<p>In this example, the GroupBy method groups the list of students by class, then sorts the students within each class by name using the OrderBy method. Finally, we use the Select method to create a new result object that includes the class and the sorted list of students. When iterating through the results, we can see that the students within each class are sorted by name.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>In LINQ, you can use the OrderBy or OrderByDescending methods to sort the results after grouping. You can write a LINQ query to group a list of students by class and sort them by name within each class. var students = new List&lt;Student&gt;(); \/\/ \u5206\u7ec4\u5e76\u5728\u7ec4\u5185\u6392\u5e8f var groupedStudents = students .GroupBy(s =&gt; s.Class) .Select(g =&gt; new [&hellip;]<\/p>\n","protected":false},"author":12,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_import_markdown_pro_load_document_selector":0,"_import_markdown_pro_submit_text_textarea":"","footnotes":""},"categories":[1],"tags":[],"class_list":["post-21090","post","type-post","status-publish","format-standard","hentry","category-uncategorized"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v21.5 (Yoast SEO v21.5) - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>How to sort within a group after grouping in LINQ? - Blog - Silicon Cloud<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.silicloud.com\/blog\/how-to-sort-within-a-group-after-grouping-in-linq\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"How to sort within a group after grouping in LINQ?\" \/>\n<meta property=\"og:description\" content=\"In LINQ, you can use the OrderBy or OrderByDescending methods to sort the results after grouping. You can write a LINQ query to group a list of students by class and sort them by name within each class. var students = new List&lt;Student&gt;(); \/\/ \u5206\u7ec4\u5e76\u5728\u7ec4\u5185\u6392\u5e8f var groupedStudents = students .GroupBy(s =&gt; s.Class) .Select(g =&gt; new [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.silicloud.com\/blog\/how-to-sort-within-a-group-after-grouping-in-linq\/\" \/>\n<meta property=\"og:site_name\" content=\"Blog - Silicon Cloud\" \/>\n<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\" \/>\n<meta property=\"article:published_time\" content=\"2024-03-15T21:29:07+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2024-03-21T19:39:25+00:00\" \/>\n<meta name=\"author\" content=\"Liam\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:site\" content=\"@SiliCloudGlobal\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Liam\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"1 minute\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-sort-within-a-group-after-grouping-in-linq\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-sort-within-a-group-after-grouping-in-linq\/\"},\"author\":{\"name\":\"Liam\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/23786905eb7b377f45ddb01c17da7671\"},\"headline\":\"How to sort within a group after grouping in LINQ?\",\"datePublished\":\"2024-03-15T21:29:07+00:00\",\"dateModified\":\"2024-03-21T19:39:25+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-sort-within-a-group-after-grouping-in-linq\/\"},\"wordCount\":114,\"commentCount\":0,\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-sort-within-a-group-after-grouping-in-linq\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/how-to-sort-within-a-group-after-grouping-in-linq\/\",\"name\":\"How to sort within a group after grouping in LINQ? - Blog - Silicon Cloud\",\"isPartOf\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\"},\"datePublished\":\"2024-03-15T21:29:07+00:00\",\"dateModified\":\"2024-03-21T19:39:25+00:00\",\"breadcrumb\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-sort-within-a-group-after-grouping-in-linq\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/www.silicloud.com\/blog\/how-to-sort-within-a-group-after-grouping-in-linq\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/how-to-sort-within-a-group-after-grouping-in-linq\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\/\/www.silicloud.com\/blog\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"How to sort within a group after grouping in LINQ?\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#website\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"name\":\"Silicon Cloud Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\"},\"inLanguage\":\"en-US\"},{\"@type\":\"Organization\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#organization\",\"name\":\"Silicon Cloud Blog\",\"url\":\"https:\/\/www.silicloud.com\/blog\/\",\"logo\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\",\"url\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"contentUrl\":\"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png\",\"width\":1024,\"height\":1024,\"caption\":\"Silicon Cloud Blog\"},\"image\":{\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/\"},\"sameAs\":[\"https:\/\/www.facebook.com\/SiliCloudGlobal\/\",\"https:\/\/twitter.com\/SiliCloudGlobal\"]},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/23786905eb7b377f45ddb01c17da7671\",\"name\":\"Liam\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/8d37ed3e7f770dde8bf069ba0b4298688028c3abaacf1131742fc1352d174ebd?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/8d37ed3e7f770dde8bf069ba0b4298688028c3abaacf1131742fc1352d174ebd?s=96&d=mm&r=g\",\"caption\":\"Liam\"},\"sameAs\":[\"http:\/\/Wilson\"],\"url\":\"https:\/\/www.silicloud.com\/blog\/author\/liamwilson\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"How to sort within a group after grouping in LINQ? - Blog - Silicon Cloud","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.silicloud.com\/blog\/how-to-sort-within-a-group-after-grouping-in-linq\/","og_locale":"en_US","og_type":"article","og_title":"How to sort within a group after grouping in LINQ?","og_description":"In LINQ, you can use the OrderBy or OrderByDescending methods to sort the results after grouping. You can write a LINQ query to group a list of students by class and sort them by name within each class. var students = new List&lt;Student&gt;(); \/\/ \u5206\u7ec4\u5e76\u5728\u7ec4\u5185\u6392\u5e8f var groupedStudents = students .GroupBy(s =&gt; s.Class) .Select(g =&gt; new [&hellip;]","og_url":"https:\/\/www.silicloud.com\/blog\/how-to-sort-within-a-group-after-grouping-in-linq\/","og_site_name":"Blog - Silicon Cloud","article_publisher":"https:\/\/www.facebook.com\/SiliCloudGlobal\/","article_published_time":"2024-03-15T21:29:07+00:00","article_modified_time":"2024-03-21T19:39:25+00:00","author":"Liam","twitter_card":"summary_large_image","twitter_creator":"@SiliCloudGlobal","twitter_site":"@SiliCloudGlobal","twitter_misc":{"Written by":"Liam","Est. reading time":"1 minute"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/www.silicloud.com\/blog\/how-to-sort-within-a-group-after-grouping-in-linq\/#article","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-sort-within-a-group-after-grouping-in-linq\/"},"author":{"name":"Liam","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/23786905eb7b377f45ddb01c17da7671"},"headline":"How to sort within a group after grouping in LINQ?","datePublished":"2024-03-15T21:29:07+00:00","dateModified":"2024-03-21T19:39:25+00:00","mainEntityOfPage":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-sort-within-a-group-after-grouping-in-linq\/"},"wordCount":114,"commentCount":0,"publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"WebPage","@id":"https:\/\/www.silicloud.com\/blog\/how-to-sort-within-a-group-after-grouping-in-linq\/","url":"https:\/\/www.silicloud.com\/blog\/how-to-sort-within-a-group-after-grouping-in-linq\/","name":"How to sort within a group after grouping in LINQ? - Blog - Silicon Cloud","isPartOf":{"@id":"https:\/\/www.silicloud.com\/blog\/#website"},"datePublished":"2024-03-15T21:29:07+00:00","dateModified":"2024-03-21T19:39:25+00:00","breadcrumb":{"@id":"https:\/\/www.silicloud.com\/blog\/how-to-sort-within-a-group-after-grouping-in-linq\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.silicloud.com\/blog\/how-to-sort-within-a-group-after-grouping-in-linq\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.silicloud.com\/blog\/how-to-sort-within-a-group-after-grouping-in-linq\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.silicloud.com\/blog\/"},{"@type":"ListItem","position":2,"name":"How to sort within a group after grouping in LINQ?"}]},{"@type":"WebSite","@id":"https:\/\/www.silicloud.com\/blog\/#website","url":"https:\/\/www.silicloud.com\/blog\/","name":"Silicon Cloud Blog","description":"","publisher":{"@id":"https:\/\/www.silicloud.com\/blog\/#organization"},"inLanguage":"en-US"},{"@type":"Organization","@id":"https:\/\/www.silicloud.com\/blog\/#organization","name":"Silicon Cloud Blog","url":"https:\/\/www.silicloud.com\/blog\/","logo":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/","url":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","contentUrl":"https:\/\/www.silicloud.com\/blog\/wp-content\/uploads\/2023\/11\/EN-SILICON-Full.png","width":1024,"height":1024,"caption":"Silicon Cloud Blog"},"image":{"@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/logo\/image\/"},"sameAs":["https:\/\/www.facebook.com\/SiliCloudGlobal\/","https:\/\/twitter.com\/SiliCloudGlobal"]},{"@type":"Person","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/23786905eb7b377f45ddb01c17da7671","name":"Liam","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.silicloud.com\/blog\/#\/schema\/person\/image\/","url":"https:\/\/secure.gravatar.com\/avatar\/8d37ed3e7f770dde8bf069ba0b4298688028c3abaacf1131742fc1352d174ebd?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/8d37ed3e7f770dde8bf069ba0b4298688028c3abaacf1131742fc1352d174ebd?s=96&d=mm&r=g","caption":"Liam"},"sameAs":["http:\/\/Wilson"],"url":"https:\/\/www.silicloud.com\/blog\/author\/liamwilson\/"}]}},"_links":{"self":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/21090","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/users\/12"}],"replies":[{"embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/comments?post=21090"}],"version-history":[{"count":1,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/21090\/revisions"}],"predecessor-version":[{"id":54932,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/posts\/21090\/revisions\/54932"}],"wp:attachment":[{"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/media?parent=21090"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/categories?post=21090"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/www.silicloud.com\/blog\/wp-json\/wp\/v2\/tags?post=21090"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}