Finden Zeile Index für DataTable
Ist es möglich, die Zeile index eines DataTable, so dass Sie Zugriff auf die vorherigen und nächsten Zeilen? Zum Beispiel habe ich eine DataTable, die enthält zwei Spalten ChapterTitle und PageURL. Dies ist bei einem Inhaltsverzeichnis eines Buches. ChapterTitle ist das Kapitel, in dem Namen und PageURL ist eine HTML-Seite, enthält das Kapitel (chaptername.html). Wenn man in einem Kapitel des Buches möchte ich in der Lage sein zu sagen, was ist das nächste bzw. Vorherige Kapitel.
Nach dem Auffinden der Kapitel, die ich bin derzeit, wie Sie können, bekommen Sie die nächsten und vorherigen Zeilen?
ChapterTable.Select("PageURL = '" & PageURL& "'")
Sie sagen, Sie haben zwei Spalten:
entweder haben Sie die Informationen in Ihrer Datenbank, müssen Sie analysieren Ihre ChapterTitle zu finden, die info... (zur Erinnerung : die Reihenfolge der Zeilen in einer Datenbank sollte nicht relevant sein. Primary key(s) sind.)
korrigiert die Spalte name
ChapterTitle
und PageURL
, aber Siere selecting the column
ChapterStartPage`.entweder haben Sie die Informationen in Ihrer Datenbank, müssen Sie analysieren Ihre ChapterTitle zu finden, die info... (zur Erinnerung : die Reihenfolge der Zeilen in einer Datenbank sollte nicht relevant sein. Primary key(s) sind.)
korrigiert die Spalte name
InformationsquelleAutor Aaron | 2012-02-06
Du musst angemeldet sein, um einen Kommentar abzugeben.
Zuerst habe ich versucht mithilfe von LINQ auf der Datentabelle.AsEnumerable() mit einem Skip(-1).Nehmen, (3), aber es war zu viel Zeit, um es arbeiten. Ein weiterer Gedanke ist, um einen Dritten Spalte in der DataTable aufgerufen, RowID und dann können Sie das .Wählen Sie die Methode, wie gezeigt, in Ihrer Frage und mit der RowID -1 oder +1 werden Sie wissen, die Prev und Next Zeilen in der datatable.
Vielen Dank für Ihre Anregungen.
InformationsquelleAutor Jeremy Thompson
Wenn Sie die dt.Spalten.PrimaryKey (), wenn Sie ziehen Sie in der Tabelle, können Sie nur verwenden, findby(pk) wenn Sie, dann können Sie LINQ-einfach, nur:
"wir werden den Namen der datatable-Kapitel zu halten lesbar:
Können Sie ändern, oder einfach nur die Kapitel.toDataRow..etc.
HTH
InformationsquelleAutor Nathan Teague