Bende bu var List<string>:
IList<string> ListaServizi = new List<string>();
Alfabetik ve artan şekilde nasıl sıralayabilirim?
Bende bu var List<string>:
IList<string> ListaServizi = new List<string>();
Alfabetik ve artan şekilde nasıl sıralayabilirim?
Yanıtlar:
ListaServizi = ListaServizi.OrderBy(q => q).ToList();
IList<string>. Bu kod, daha fazla olumlu oy alan yanıtların aksine, aslında yazıldığı gibi çalışacaktı ListaServizi.Sort(). Bunun seçeceğim çözüm olduğunu söylemiyorum, ama cevabımı gönderdiğimde aslında tek doğru cevap buydu.
.Sort, o zaman neden yapmayasınız ?
List. Ve bu cevapla ilişkili maliyet önemsiz değildir ve ayrıca gereksizdir. Kelimenin tam anlamıyla hiçbir şey kazanmaz . Koda karmaşıklık katar, daha az özlüdür, daha az verimlidir, burada tam anlamıyla dezavantajlardan başka hiçbir şey yoktur.
Sıralamayı kullanabilirsiniz
List<string> ListaServizi = new List<string>() { };
ListaServizi.Sort();
Diğer yanıtlar önermek için doğrudur Sort, ancak depolama konumunun olarak yazıldığı gerçeğini gözden kaçırmış görünüyorlar IList<string. Sortarayüzün bir parçası değil.
ListaServiziBunun her zaman a içereceğini biliyorsanız List<string>, bildirilen türünü değiştirebilir veya bir atama kullanabilirsiniz. Emin değilseniz türü test edebilirsiniz:
if (typeof(List<string>).IsAssignableFrom(ListaServizi.GetType()))
((List<string>)ListaServizi).Sort();
else
{
//... some other solution; there are a few to choose from.
}
Belki daha deyimsel:
List<string> typeCheck = ListaServizi as List<string>;
if (typeCheck != null)
typeCheck.Sort();
else
{
//... some other solution; there are a few to choose from.
}
ListaServiziBunun bazen farklı bir uygulamasını içereceğini biliyorsanız, IList<string>bir yorum bırakın ve sıralamak için bir veya iki öneri ekleyeceğim.
.SortMsdn.microsoft.com/en-us/library/b0zbh7b6%28v=vs.90%29.aspx denediniz mi?