Mam DataCable z kolumnami o nazwie foldername
, documentname
. Dane jak poniżej:Sortowanie tabeli danych według wielu kolumn przy użyciu C#
FolderName DocumentName
Folder1 HR[D] Document
Folder1 ___----'
Folder1 Asp_example.pdf
Folder2 SD
Folder3 Heavy_weight
Folder3 Accesorial Services
Jak alphabetically
rodzaj DocumentName podstawie NazwaFolderu w .Net Framework 2.0
.
Rozwiązanie, które próbowaliśmy, jest poniżej, ale zajmuje zbyt wiele czasu, ponieważ zawiera ponad 1200000 rekordów.
int counter=0;
while (counter < searchDT.Rows.Count){
string FolderName = Convert.ToString(searchDT.Rows[counter]["Folder Name"]);
string exp = "[Folder Name] like '" + FolderName + "'";
if (FolderName.Contains("%") || FolderName.Contains("_") || FolderName.Contains("[]") || FolderName.Contains("'"))
exp = "[Folder Name] like '" + EscapeLikeValue(FolderName) + "'";
string sortExpression = "[Document Name] ASC";
DataRow[] drfoldername = searchDT.Select(exp, sortExpression);
foreach (DataRow row in drfoldername)
drfoldernameDT.ImportRow(row);
counter += drfoldername.Length;
}
Wspomniałeś, że te informacje pochodzą z bazy danych, więc dlaczego nie robisz klauzuli ORDER BY w zapytaniu SQL? W przeciwnym razie próbowałeś używać DataView zamiast DataTable? –