Ho una lista che ho bisogno di ordinare per due campi. Ho provato a utilizzare OrderBy in LINQ ma questo mi consente solo di specificare un campo. Sto cercando la lista da ordinare per il primo campo e poi se ci sono duplicati nel primo campo da ordinare per il secondo campo.LINQ OrderDa più di un campo
Ad esempio voglio i risultati a guardare come questo (ordinati per cognome poi nome).
- Adams, John
- Smith, James
- Smith, Peter
- Thompson, Fred
ho visto che è possibile utilizzare il SQL like syntax to accomplish this ma sto cercando un modo per farlo con il metodo OrderBy.
IList<Person> listOfPeople = /*The list is filled somehow.*/
IEnumerable<Person> sortedListOfPeople = listOfPeople.OrderBy(aPerson => aPerson.LastName, aPerson.FirstName); //This doesn't work.
Una spiegazione completa è elencata qui: http: // blog. asp.net/zeeshanhirani/archive/2008/04/16/thenby-operator-part-14.aspx – DigitalNomad
Questo è Lambda. La soluzione LINQ ha bisogno di @svick in LINQ. –
Non sono sicuro di cosa intendi. La sintassi delle query è solo zucchero per la sintassi del metodo di cui sopra; entrambi sono "LINQ". Vedere http://msdn.microsoft.com/en-us/library/vstudio/bb397947.aspx E se si legge la domanda, chiede specificamente la versione della sintassi del metodo. – tzaman