2009-08-10 8 views
0

Pour un projet sur lequel je travaille, nous cherchons un moyen d'ajouter dynamiquement des filtres à une page qui contrôle ensuite la sortie de données dans, par exemple, une grille. Nous souhaitons ajouter dynamiquement les filtres car nous souhaitons que le client puisse modifier les propriétés pouvant être filtrées et quel type de filtre (zone de texte, liste déroulante, sélecteur de couleurs, etc.) doit être utilisé.ASP.NET Filtrage dynamique des données

Le filtre doit fonctionner comme suit: - Le client lie un filtre à une certaine propriété et spécifie le type de filtre (pour cet exemple: liste déroulante). - Un contrôle utilisateur qui contient tous les filtres chargés tous les filtres spécifiés - Les filtres chargent toutes les valeurs de la propriété spécifiée en tant qu'options. La première fois que la page est chargée ce serait les valeurs de tous les articles. - Maintenant, l'utilisateur sélectionne une valeur de l'un des filtres; la page se recharge - Seuls les éléments qui ont la valeur de filtre spécifiée sont récupérés, l'utilisateur peut spécifier un ou plusieurs filtres en même temps. - Une fois qu'un utilisateur effectue un filtrage par filtrage, seules les valeurs de filtre des éléments récupérés doivent être utilisées dans les autres filtres.

J'ai les problèmes suivants: - Lorsque je crée l'environnement d'exécution des filtres, les événements sont perdus car les contrôles sont recréés à chaque publication. - Je pourrais placer les filtres dans PreInit qui devrait résoudre ce problème, mais ensuite déterminer quels contrôles devraient être chargés devient un problème puisque le chargement de tous les environnements vars n'est pas encore terminé - Je ne connais pas un bon moyen de retourner tout le filtre valeurs à un point central à partir de laquelle je peux faire une bonne requête. - La requête doit être dynamique. J'utilise linq que je veux rendre dynamique, donc je n'ai pas besoin de tout sélectionner à chaque fois. Comment faire une requête de sélection dynamique basée sur une chaîne stockée dans la base de données? - Je dois sélectionner des éléments en fonction des valeurs de filtre, puis ajuster le reste des filtres à la sélection déjà effectuée. Ce genre de désordre toute la séquence régulière de liaison de données.

Toute aide dans l'un de ce qui précède serait génial! PS: Une chose à laquelle je pensais était de transmettre le long des valeurs de filtre dans la publication qui devrait être reconnaissable. De cette façon, le serveur pourrait les utiliser pour la sélection, puis créer les filtres et sélectionner automatiquement les valeurs de filtre précédemment sélectionnées. Je ne suis pas tout à fait sûr de savoir comment atteind ce que ...

Répondre

0
+0

Ce n'est pas facile; les filtres doivent être séparés de la grille à des fins de mise en page (ils sont en fait à côté de la grille). L'utilisation de filtres intégrés n'est pas une option. – Jasper