Dans notre projet, nous exigeons que, lorsqu'un ensemble d'enregistrements est renvoyé par la base de données, les enregistrements doivent être triés par rapport au champ TITLE de l'enregistrement. Les enregistrements devront être triés par ordre alphabétique, mais si le titre d'un enregistrement contient un numéro, il devrait apparaître après les enregistrements dont le titre est constitué uniquement d'alphabets. Détails: Nous utilisons SQL Server et C#. Les données de la base de données proviennent d'une classe Entity qui transmet les données à d'autres couches. Alors, quelle sera la solution possible et efficace pour cette exigence.Tri des données renvoyées par une base de données
3
A
Répondre
1
Je supposerai que vous avez un objet qui contient des données et qui a une propriété TITLE. Tenir compte:
class Entity
{
...
public string TITLE { get; set; }
...
}
Vous pouvez stocker ces entités dans un List<Entity>
et plus tard, quand vous avez besoin, appelez la méthode Sort
pour trier.
Pour trier en fonction de vos besoins, saisissez un Comparer
lors de l'appel du tri. Pour plus d'informations, voir: http://msdn.microsoft.com/en-us/library/234b841s.aspx.
Dans Compare(Entity x, Entity y)
vous pouvez comparer les deux entités en fonction de votre besoin.
A propos de la comparaison du TITLE's
:
Essayez cette méthode de comparaison:
private static int StringComparer(string x, string y)
{
if (!x.AllChar()) return 1;
if (!y.AllChar()) return -1;
return x.CompareTo(y) * -1;
}
public static bool AllChar(this string x)
{
char[] chars = x.ToCharArray();
bool allchar = chars.Any<char>((c) => !char.IsLetter(c));
return !allchar;
}
Questions connexes
- 1. Tri des enregistrements de base de données
- 2. Données renvoyées par Oracle Proc dans vb.net
- 3. Données de base (tri SQLite) tri personnalisé des chaînes
- 4. Suppression des données des informations renvoyées.
- 5. jQuery - Obtenir des données renvoyées de ajaxStop
- 6. Tri des données numériques par ordre alphabétique
- 7. tri des résultats étranges NSMutableArray avec des données de base
- 8. Tri d'une base de données Silverlight DataGrid
- 9. Tri des données
- 10. Grand tableau de données JSF sauvegardé par base de données pouvant gérer la pagination/le tri
- 11. Silverlight 4 Tri par numéro de données
- 12. Données de base, tri des objets enfants un-à-plusieurs
- 13. tri de données numériques par ordre alphabétique
- 14. jQuery: tri des données hiérarchiques?
- 15. Balises html dans les données renvoyées par json
- 16. Tri des données lors d'un développement piloté par domaine
- 17. Tri de données par ordre alphabétique
- 18. Comment gérer les données renvoyées par l'appel .ajaxSubmit()?
- 19. Syntaxe SQL pour le calcul des résultats des données renvoyées
- 20. PHP Tri des données sérialisées
- 21. C# Obtention de la taille des données renvoyées par et requête SQL
- 22. Mise en cache des données de la base de données SQL pour le tri
- 23. Certains problèmes de tri (débutant de base de données)
- 24. Comment obtenir des données d'une base de données vers une autre base de données?
- 25. Itération via les données jQuery renvoyées
- 26. Insérer des données dans une base de données mysql distante
- 27. Restauration d'enregistrements par défaut dans une base de données de base de données
- 28. données dans une table emboîtées de base de données
- 29. Tri d'un ensemble de données avec une vue de données
- 30. Tri XML sur la base de données numériques en Javascript
Est-ce que toutes les informations? Compte tenu des éléments * ab1 *, * abc *, * abc1 *, * abd *, la liste qui en résulte devrait-elle être dans cet ordre, ou devrait-elle être * abc *, * abd *, * ab1 *, * abc1 * ou * abc *, * ab1 *, * abc1 *, * abd *? – slugster