Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di rsdpzed
    Registrato dal
    Aug 2001
    Messaggi
    764

    Filtrare una tabella di un db

    'Giorno
    Innanzitutto mi scuso per il titolo un po generico ma ho paura cheil mio problema sia dovuto ad un impostazione sbagliata del problema essendo in fase di learning del .net
    Ammettiamo di avere una tabella. La recupero con un datasource con la query:
    codice:
    SELECT * FROM tabella
    e la visualizzo in un GridView.
    Andando avanti nello studio ho visto come tramite SELECTPARAMETERS o FILTERPARAMETERS sia possibile recuperare i dati in base a valori settati in controlli web, per esempio dropdownlist.
    Il mio problema è che una volta impostato il datasouce in questo modo (per esempio su un parametro associato a una dropdownlist) sono costretto a usare la dropdown affinchè il datasource mi recuperi i dati. Addirittura al primo caricamento pagina il gridview mi visualizza la tabella filtrata secondo il valore iniziale della dropdown (giustamente) mentre io vorrei visualizzare inizialmente l'intera tabella e poi filtrarla OPZIONALMENTE con la dropdown.
    Ho provato anche ad inserire un pulsante "rimuovi filtro" che mi imposta brutalmente la selectcommand:
    codice:
    Datasource.SelectCommand="SELECT * FROM tabella"
    Funziona, ma al primo postback la gridview torna a filtrare in base al parametro.

    Spartanamente ho "risolto" impostando due datasource uno senza il where e l'altro con il filtro. In base al valore di una checkbox ("usa filtro") collego il gridview all'uno o all'altro datasource. Funziona benissimo ma credo che non sia l'approccio giusto anche perche se i controlli su cui vorrei impostare il filtraggio dei record diventano piu di uno dovrei impostare piu datasource uno per ogni tipo di ricerca...mi sembra assurdo.

    Di sicuro non è il metodo giusto. Voi come fate?

  2. #2
    Utente di HTML.it L'avatar di mexican
    Registrato dal
    Oct 2001
    residenza
    cava de tirreni
    Messaggi
    3,541

    Re: Filtrare una tabella di un db

    Originariamente inviato da rsdpzed
    'Giorno
    Innanzitutto mi scuso per il titolo un po generico ma ho paura cheil mio problema sia dovuto ad un impostazione sbagliata del problema essendo in fase di learning del .net
    Ammettiamo di avere una tabella. La recupero con un datasource con la query:
    codice:
    SELECT * FROM tabella
    e la visualizzo in un GridView.
    Andando avanti nello studio ho visto come tramite SELECTPARAMETERS o FILTERPARAMETERS sia possibile recuperare i dati in base a valori settati in controlli web, per esempio dropdownlist.
    Il mio problema è che una volta impostato il datasouce in questo modo (per esempio su un parametro associato a una dropdownlist) sono costretto a usare la dropdown affinchè il datasource mi recuperi i dati. Addirittura al primo caricamento pagina il gridview mi visualizza la tabella filtrata secondo il valore iniziale della dropdown (giustamente) mentre io vorrei visualizzare inizialmente l'intera tabella e poi filtrarla OPZIONALMENTE con la dropdown.
    Ho provato anche ad inserire un pulsante "rimuovi filtro" che mi imposta brutalmente la selectcommand:
    codice:
    Datasource.SelectCommand="SELECT * FROM tabella"
    Funziona, ma al primo postback la gridview torna a filtrare in base al parametro.

    Spartanamente ho "risolto" impostando due datasource uno senza il where e l'altro con il filtro. In base al valore di una checkbox ("usa filtro") collego il gridview all'uno o all'altro datasource. Funziona benissimo ma credo che non sia l'approccio giusto anche perche se i controlli su cui vorrei impostare il filtraggio dei record diventano piu di uno dovrei impostare piu datasource uno per ogni tipo di ricerca...mi sembra assurdo.

    Di sicuro non è il metodo giusto. Voi come fate?
    Al pageload fai un caricamento normale con la query non filtrata poi vicino la select metti un pulsante pulsante e al clik metti la query che filtra

  3. #3
    Utente di HTML.it L'avatar di rsdpzed
    Registrato dal
    Aug 2001
    Messaggi
    764
    ciao mexican, grazie innanzitutto.
    Questa soluzione "al contrario" l'avevo gia provata il problema è che se attivo la paginazione quando cambio pagina (attivando un postback) il filtro va via e mentre ti dico questo penso al fatto che potrei fare un if !isPostBack per risolvere il problema.... thx.

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2026 vBulletin Solutions, Inc. All rights reserved.