Trier les éléments de chaîne dans un datatable que int à l'aide de c#
J'ai quelques codes numériques stockées dans une DataTable. Lorsque j'essaie de faire le tri à l'aide de DataView il trie la colonne par chaîne. Quel est le moyen le plus facile de trier les données en entier/nombre?
DataView view = dt.DefaultView();
view.Sort = "Code asc";
dt = view.ToTable();
Données dans la table de données:
128, 123, 112, 12, 126
après le tri montre:
112, 12, 123, 126, 128
résultat attendu:
12, 112, 123, 126, 128
OriginalL'auteur Sri Reddy | 2011-09-27
Vous devez vous connecter pour publier un commentaire.
Ici est un exemple fonctionnel. Vous pouvez créer un autre DataTable via Clone, et de modifier le type de données de la colonne de type Int et de copier les données.
ce qui va se passer si le code est "001", sera de changer de type de données chaîne de caractères en entier omettre les zéros?
OriginalL'auteur SaQiB
Lorsque vous créez une colonne dans la table de données, de la définir comme typeof(int)
DataTable dt = soaRequest.GetMasterList();
.essayez cette dt.Les Colonnes["Code"].DataType = Type.GetType("Le Système De.Int32");
OriginalL'auteur SaQiB
Une option est d'ajouter une colonne Calculée avec le bon type et de tri.
Comme ceci:
OriginalL'auteur Eliezer Santana