Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 109167
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 11, 20262026-05-11T02:01:36+00:00 2026-05-11T02:01:36+00:00

I recently started to learn about LINQ and came across the OrderBy extension method.

  • 0

I recently started to learn about LINQ and came across the OrderBy extension method. This initially excited me because the syntax seemed much nicer than the Sort method that we use all over the place for Generic Lists.

For example, when sorting a list of languages, we normally do something like:

neutralCultures.Sort((x, y) => x.EnglishName.CompareTo(y.EnglishName)); 

This works well, but I prefer the syntax of OrderBy, which only requires that you pass in the property that you wish to sort by, like so:

neutralCultures.OrderBy(ci => ci.EnglishName); 

The problem is that OrderBy returns IOrderedEnumerable, but I need List<T>. So, I set out to extend the Sort method for List<T> using the same signature that is used for OrderBy.

public static void Sort<TSource, TKey>(this List<TSource list, Func<TSource, TKey> keySelector) {     list = list.OrderBy(keySelector).ToList<TSource>(); } 

This would be called like:

neutralCultures.Sort(ci => ci.EnglishName); 

Maybe I’m overlooking a simple implementation detail, but this code doesn’t work. It compiles, but doesn’t return an ordered list. I’m sure I can refactor this to make it work, but I was just wondering why setting list within the extension method doesn’t work.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. 2026-05-11T02:01:37+00:00Added an answer on May 11, 2026 at 2:01 am

    That’s the behaviour I would expect. Imagine if such a thing were possible:

    var c = myCustomer; myCustomer.DoStuff(); if (c == myCustomer) // returns false!!! 

    Simply calling a method on an object (which is what an extension method looks like to the user of your framework) shouldn’t change which instance the reference points to.

    For your example, I would stick with Sort.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

When I started to learn about WPF and MVVM recently, I came across some
I recently started learning about drupal integration and because I wanted to learn how
What is this Common Language Runtime that I've been hearing about? I've recently started
I've started to learn Ruby recently, and was wondering about which version to learn.
Sorry if this is a simple question, but I've only recently started learn coding
I have recently started to learn about programming for the iPhone and after going
I've recently started to learn about Oracle WebCenter. I'm running Oracle UCM on VBox(downloaded
I recently started learning objective-C and cocoa. I'm slowly starting to learn about memory
I recently started to learn Java programming and we just reach the Java Threads
I recently started to learn how to use openCL to speed up some part

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.