Ho un DataTable con 10 righe dire una delle colonne numerate da 1 a 10 in modo casuale. Voglio ordinarli. di solito, faccio questo:Selezionare le prime righe N DOPO l'ordinamento da Dataview in C#
DataView Dv = new DataView(dtPost, "", "views desc", DataViewRowState.Unchanged);
repeater.DataSource = Dv;
repeater.DataBind();
Ora, voglio solo per legare i primi 5 file di questo Dataview. Se provo questo:
DvPopBlogs.Table.Rows.Cast<System.Data.DataRow>().Take(5);
OR
DvPopBlogs.Table.AsEnumerable().Take(5); //this usually works if sorting wasnt necessary
Funziona, ma DataView dimentica completamente circa la selezione e seleziona solo 5 righe da top.
L'ho provato anche con tutti i DataViewRowStates. Come selezionare le prime 5 righe dopo l'ordinamento?
Mi sembra di rimanere senza idee! per favore aiuto!
sì, ho trovato questo quando stavo cercando di eseguire il debug, dataview sembrava avere ordine ordinato ma non appena ho aggiunto tabella, l'ordine è stato perso, ora capisco tabella è i dati originali. Grazie. Ma DvPopBlogs è un DataView e non ha né i metodi .Take() o .DataViewRows()! – iamserious
Provare dvPopBlogs.AsEnumerable(). Take, o nel caso peggiore dvPopBlogs.ToTable() Quest'ultimo creerà un nuovo DataTable dal contenuto della vista. –
Salve, scusa, se uso il ripetitore del metodo .ToTable() mi lamento (sul binding) che alcune colonne non esistono. Il debug mostra che esiste, potrebbe essere che sto facendo qualcosa di sbagliato e sono sicuro che non puoi scoprire senza il codice completo. Cosa suggerisci che io faccia ora? Grazie e scusa per aver fatto troppe domande! – iamserious