У мене це 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 ?