Ricerca su GridView con valori NULL tramite DropDownList
niubbo600
niubbo600 non è online. Ultima attività: 10/10/2008 18.06.34niubbo600
il 4 settembre 2008 alle 16.09
23 messaggi dal 04 settembre 2008
Salve a tutti,

ho una GridView con i seguenti valori

ID | Utente | Gruppo | Locazione
1 | Pippo | Windows | Casa
2 | Pluto | Linux | Ufficio
3 | Paperino | Windows | NULL

Ho poi una DropDrownList con i seguenti valori:

Casa
Ufficio

Vorrei che:

All'apertura della pagina vengano visualizzati tutti i records (compreso Paperino che ha il campo Locazione = NULL)

ed inoltre vorrei che:


quando scelgo dalla DropDrownList il valore Casa deve mostrare solo Pippo

quando scelgo dalla DropDrownList il valore Ufficio deve mostrare solo Pluto

Semplice NO?

Per fare questo ho aggiunto un ListItem alla DropDownList valorizzato come '%'

Il problema è che quando la pagina viene avviata, la DropDownList viene valorizzata giustamente con '%', ma la GridView riempita solo con Pippo e Pluto. Praticamente '%' non estrae Paperino perchè ha NULL nel campo.

A me invece interessa estrarre TUTTI i records!


Il codice è il seguente:



<%@ Page Language="VB" AutoEventWireup="false" CodeFile="Default.aspx.vb" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <title>Pagina senza titolo</title>
</head>
<body>
    <form id="form1" runat="server">
    <div>
    
        <br />
        <br />
        <br />
        <br />
        <asp:DropDownList ID="DropDownList1" runat="server" AppendDataBoundItems="True"
            AutoPostBack="True" DataSourceID="AccessDataSourceLocazione"
            DataTextField="Locazione" DataValueField="IDLocazione"
            style="z-index: 1; left: 24px; top: 79px; position: absolute">
            <asp:ListItem Value="%">All</asp:ListItem>
        </asp:DropDownList>
        <asp:AccessDataSource ID="AccessDataSourceLocazione" runat="server"
            DataFile="~/App_Data/test.mdb"
            SelectCommand="SELECT [IDLocazione], [Locazione] FROM [Locazione]">
        </asp:AccessDataSource>
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <br />
        <asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="False"
            DataKeyNames="IDUtente" DataSourceID="AccessDataSourceGrid"
            style="z-index: 1; left: 19px; top: 135px; position: absolute; height: 133px; width: 187px">
            <Columns>
                <asp:BoundField DataField="IDUtente" HeaderText="IDUtente"
                    InsertVisible="False" ReadOnly="True" SortExpression="IDUtente" />
                <asp:BoundField DataField="Utente" HeaderText="Utente"
                    SortExpression="Utente" />
                <asp:BoundField DataField="IDGruppo" HeaderText="IDGruppo"
                    SortExpression="IDGruppo" />
                <asp:BoundField DataField="IDLocazione" HeaderText="IDLocazione"
                    SortExpression="IDLocazione" />
            </Columns>
        </asp:GridView>
    
    </div>
    <asp:AccessDataSource ID="AccessDataSourceGrid" runat="server"
        DataFile="~/App_Data/test.mdb" SelectCommand="SELECT [IDUtente], [Utente], [IDGruppo], [IDLocazione] FROM [Utente]
WHERE [IDLocazione] LIKE @DropDownList1">
        <SelectParameters>
            <asp:ControlParameter ControlID="DropDownList1" Name="DropDownList1"
                PropertyName="SelectedValue" />
        </SelectParameters>
    </asp:AccessDataSource>
    </form>
    <p>
        &nbsp;</p>
</body>
</html>




Qualche lume?

Grazie

Ciao
Microsoft Most Valuable Professional
RE: Ricerca su GridView con valori NULL tramite DropDownList
nostromo
nostromo non è online. Ultima attività: 04/07/2009 1.44.08nostromo Top Poster
il 4 settembre 2008 alle 16.28
Gestisci l'evento Select dell'AccessDataSource controlli il valore dell DropDownList e domifichi la query di conseguenza

ciao marco

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx
RE: Ricerca su GridView con valori NULL tramite DropDownList
niubbo600
niubbo600 non è online. Ultima attività: 10/10/2008 18.06.34niubbo600
il 4 settembre 2008 alle 16.40
23 messaggi dal 04 settembre 2008
Grazie per la risposta Marco, anche se fugace.
Potresti darmi ulteriori dettagli?
Non sono molto pratico di asp...

Ciao
RE: Ricerca su GridView con valori NULL tramite DropDownList
maltra
maltra non è online. Ultima attività: 29/06/2009 10.45.26maltra
il 4 settembre 2008 alle 16.51
www.futuresoftware.it | 443 messaggi dal 08 novembre 2004
Umh vedendo velocemente il codice non farei mai delle query all'interno del codice userei una buona logica MVC, potresti popolare la dropdown list prelevando i valori che ti servono da una data table:
drp.DataSource = DataTable
drp.DataBind();

...Creare è dare una forma al proprio destino. (Albert Camus)
http://blogs.dotnethell.it/maltra/
RE: Ricerca su GridView con valori NULL tramite DropDownList
maltra
maltra non è online. Ultima attività: 29/06/2009 10.45.26maltra
il 4 settembre 2008 alle 16.53
www.futuresoftware.it | 443 messaggi dal 08 novembre 2004
Ah null è un valore che non piace molto a sql, mettici 0 o qualsiasi altro valore vedrai che molti problemi si risolvono

...Creare è dare una forma al proprio destino. (Albert Camus)
http://blogs.dotnethell.it/maltra/
RE: Ricerca su GridView con valori NULL tramite DropDownList
niubbo600
niubbo600 non è online. Ultima attività: 10/10/2008 18.06.34niubbo600
il 4 settembre 2008 alle 16.54
23 messaggi dal 04 settembre 2008
scusa ma non centra molto con la mia domanda come popolo la DropDownList
Il problema è che la GridView non mi visualizza i record che hanno dei NULL.
Ciao
RE: Ricerca su GridView con valori NULL tramite DropDownList
maltra
maltra non è online. Ultima attività: 29/06/2009 10.45.26maltra
il 4 settembre 2008 alle 17.02
www.futuresoftware.it | 443 messaggi dal 08 novembre 2004
si infatti ho avevo capito male, a riguardo ti posso dire che proprio oggi ho avuto lo stesso problema con un select su campo del database che aveva valore null, io ho risolto forzando in fase di inserimento un valore (0) quando nessun valore per quel campo era presente. Non è la strada migliore ma per quello che dovevo fare ha funzionato

...Creare è dare una forma al proprio destino. (Albert Camus)
http://blogs.dotnethell.it/maltra/
Microsoft Most Valuable Professional
RE: Ricerca su GridView con valori NULL tramite DropDownList
nostromo
nostromo non è online. Ultima attività: 04/07/2009 1.44.08nostromo Top Poster
il 4 settembre 2008 alle 17.09
allora gestisci l'evento Selecting dell'AccessDataSource, il metodo deve rispettare la firma del delegato SqlDataSourceSelectingEventHandler , quindi riceve due parametri il classico sender e un istanza dell'oggetto SqlDataSourceSelectingEventArgs.

attraverso la proprietà command di quest'ultimo puoi accedere ad ogni aspetto del comando, compresa la query, controlli con un semplice

if(MyDrop.SelectedValue = "valore")
{
//imposto una query
}
else
{
//ne imposto un altra
}

se hai altre domande non esitare, scusa se sono un pò di fretta

ciao marco
Modificato da nostromo il 04 settembre 2008 17.09 -

Chi parla senza modestia troverà difficile rendere buone le proprie parole.
Confucio

http://nostromo.spaces.live.com/default.aspx

2 pagine: [1] 2 Avanti >>

Vai a:
Torna al forum |   Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.

COMMUNITY
ULTIMI MESSAGGI
MEDIA
IN EVIDENZA
MISC
Powered by .db Forums "Caesar Reborn" v. 2009.6.9