У меня есть это List<string>:
IList<string> ListaServizi = new List<string>();
Как заказать по алфавиту и по возрастанию?
У меня есть это List<string>:
IList<string> ListaServizi = new List<string>();
Как заказать по алфавиту и по возрастанию?
Ответы:
ListaServizi = ListaServizi.OrderBy(q => q).ToList();
IList<string>. Этот код действительно будет работать так, как написано, в отличие от ответов, которые получили больше голосов ListaServizi.Sort(). Я не говорю, что это решение, которое я выберу, но на самом деле это был единственный правильный ответ, когда я опубликовал свой ответ.
.Sort, то почему бы этого не сделать.
List. И стоимость, связанная с этим ответом, нетривиальна и также ненужна. Он буквально ничего не получает . Это усложняет код, он менее лаконичен, менее эффективен, здесь буквально одни минусы.
Вы можете использовать сортировку
List<string> ListaServizi = new List<string>() { };
ListaServizi.Sort();
Можно предположить и другие ответы Sort, но они, похоже, упустили тот факт, что место хранения набрано как IList<string. Sortне является частью интерфейса.
Если вы знаете, что ListaServiziон всегда будет содержать List<string>, вы можете либо изменить его объявленный тип, либо использовать приведение. Если вы не уверены, вы можете протестировать тип:
if (typeof(List<string>).IsAssignableFrom(ListaServizi.GetType()))
((List<string>)ListaServizi).Sort();
else
{
//... some other solution; there are a few to choose from.
}
Возможно, более идиоматично:
List<string> typeCheck = ListaServizi as List<string>;
if (typeCheck != null)
typeCheck.Sort();
else
{
//... some other solution; there are a few to choose from.
}
Если вы знаете, что ListaServiziиногда это может быть другая реализация IList<string>, оставьте комментарий, и я добавлю пару предложений по его сортировке.
.Sortmsdn.microsoft.com/en-us/library/b0zbh7b6%28v=vs.90%29.aspx ?