Linq OrderBy no funciona dentro de la instrucción If

Tener problemas con la cláusula OrderBy no tiene ningún impacto en el ordenamiento. He revisado esto en el depurador y asegurándome de que esto es un caso en el que la línea de clasificación del código está siendo golpeada y revisando los resultados después de que no se haya aplicado el orden.

public static IEnumerable<DDLOptions<TValueType>> GetDDLOptionsViewModel<TClass, TValueType>(
            IEnumerable<TClass> list, 
            Func<TClass, TValueType> value, 
            Func<TClass, string> displayText,
            bool sort = true
        )
        {
            List<DDLOptions<TValueType>> ddlOptions;

            ddlOptions = list.Select(
                l => new DDLOptions<TValueType>
                        {
                            Value = value(l),
                            DisplayText = displayText(l)
                        }
                    ).ToList();  <========== Works if I put the Order By here.

            if (sort)
            {
                ddlOptions.OrderBy(l => l.DisplayText); <===== Does NOT work here.
            }

            return ddlOptions;
        }

Respuestas a la pregunta(4)

Su respuesta a la pregunta