Ciao a tutti sto usando una gridview collegata ad un sqldatasource che legge i dati da un database mysql. Sto facendo una pagina di gestione, e pensavo di usare la FilterExpression sull' sqldatasource. In pratica voglio filtrare il tutto in base al valore di due dropdownlist. Con una singola dropdown funziona tutto, ma appena ne uso due mi vengono restituiti dei valori sbagliati. Non riesco a capire dove sbagliol se è la FilterExpression o cosa.
Ecco il codice di gridview,sqldatasource e delle due dropdown
codice:
<asp:SqlDataSource ID="sdscerca" runat="server" ConnectionString="<%$ ConnectionStrings:lalunabluconnectionstring %>" ProviderName="<%$ ConnectionStrings:lalunabluconnectionstring.ProviderName %>" SelectCommand="SELECT id,titolo,descrizione,url,lingua,datainserimento,dataultimavisita,online,cancellato,clicked,pagamento FROM dati_new" FilterExpression="pagamento = '{0}' AND cancellato = '{0}' " > <FilterParameters> <asp:ControlParameter ControlID="ddlpagamento" Name="pagamento" PropertyName="SelectedValue" /> <asp:ControlParameter ControlID="ddlcancellato" Name="cancellato" PropertyName="SelectedValue" /> </FilterParameters> </asp:SqlDataSource>
codice:
<asp:GridView ID="gdvcerca" runat="server" AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False" BackColor="White" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px" CellPadding="3" DataSourceID="sdscerca" DataKeyNames="id"> <RowStyle ForeColor="#000066" /> <Columns> <asp:CommandField ButtonType="Image" DeleteImageUrl="~/Gestione/img/delete.jpg" DeleteText="" EditImageUrl="~/Gestione/img/edit.gif" ShowDeleteButton="True" ShowInsertButton="True" UpdateImageUrl="~/Gestione/img/edit.gif" CancelImageUrl="~/Gestione/img/cancel.gif" NewImageUrl="~/Gestione/img/insert.gif" ShowEditButton="True" /> <asp:BoundField DataField="titolo" HeaderText="Titolo" /> <asp:HyperLinkField DataNavigateUrlFields="url" HeaderText="Link" Target="_blank" Text="Vai al sito" /> </Columns> <FooterStyle BackColor="White" ForeColor="#000066" /> <PagerStyle BackColor="White" ForeColor="#000066" HorizontalAlign="Left" /> <SelectedRowStyle BackColor="#669999" Font-Bold="True" ForeColor="White" /> <HeaderStyle BackColor="#006699" Font-Bold="True" ForeColor="White" /> </asp:GridView>
codice:
<asp:DropDownList ID="ddlpagamento" runat="server" AutoPostBack="True"> <asp:ListItem Selected="True" Text=" - Non definito - " Value=""></asp:ListItem> <asp:ListItem Text=" A pagamento " Value="-1"></asp:ListItem> <asp:ListItem Text=" Non a pagamento" Value="0"></asp:ListItem> </asp:DropDownList> <asp:DropDownList ID="ddlcancellato" runat="server" AutoPostBack="True"> <asp:ListItem Selected="True" Text=" - Non definito - "></asp:ListItem> <asp:ListItem Text=" Cancellato " Value="-1"></asp:ListItem> <asp:ListItem Text=" Non cancellato " Value="0"></asp:ListItem> </asp:DropDownList>
Sapete dirmi qualcosa?