J'ai un datatable (.Net) avec plusieurs colonnes. Une des colonnes indique que RollNo est de type chaîne mais contient des données numériques. Par exemple. 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14. J'essaie de faire un tri en utilisant ce qui suit:Tri d'une colonne particulière de type chaîne de caractères contenant des données numériques
string sql =
"Select StudentID, RollNo, AdmissionID,(FirstName + Space(1) + Isnull(MiddleName,'') + Space(1) + Isnull(LastName,'')) as Name," +
" PermState as State from Students where ClassId = '" + ddlClass.SelectedValue + "'" +
" order by RollNo";
DataTable dt = bl.GetDataSet(sql);
dt.DefaultView.Sort = "RollNo";
Mais après triage j'obtenir le résultat en tant que 1, 10, 11, 12, 13, 14, 2, 3, 4, 5, 6, 7, 8 , 9.
Comment le résoudre?
Fantastique! Tim, Merci pour votre soutien. Mais que se passe-t-il si le champ RollNo contient également des données alphanumériques et numériques? – Mahbub
Cela dépend du format. En général, 'Regex' est votre ami. Vous pouvez utiliser n'importe quel type de code dans Linq. –
Pouvez-vous s'il vous plaît fournir un exemple de code pour cela? – Mahbub