'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:
e la visualizzo in un GridView.codice:SELECT * FROM tabella
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:
Funziona, ma al primo postback la gridview torna a filtrare in base al parametro.codice:Datasource.SelectCommand="SELECT * FROM tabella"
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?

Rispondi quotando