Datalist SqlDataSource ile Kayıt Arama ve Detay Sayfası

Form Ekranı 

<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        <asp:Button ID="Button2" runat="server" Text="Ara" OnClick="Button2_Click" />


<asp:DataList ID="DataList1" runat="server" DataSourceID="SqlDataSource1" OnItemCommand="DataList1_ItemCommand" DataKeyField="urunid" Width="194px">
        <ItemTemplate>
            urunadi:
            <asp:Label ID="urunadiLabel" runat="server" Text='<%# Eval("urunadi") %>' />
            <br />
            fiyat:
            <asp:Label ID="fiyatLabel" runat="server" Text='<%# Eval("fiyat") %>' />
            <br />
          
            urunid:
            <asp:Label ID="urunidLabel" runat="server" Text='<%# Eval("urunid") %>' />
            <br />
            <br />
            <asp:Button ID="Button1" runat="server" CommandName="datalistdene" CommandArgument='<%#Eval("urunid") %>' Text="Göster" />
        </ItemTemplate>
        </asp:DataList>
    
        <asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:caglayanCS %>" SelectCommand="SELECT [urunadi], [fiyat], [urunid] FROM [urunTablosu]">
        </asp:SqlDataSource>


<%--     <SelectParameters> 
                <asp:ControlParameter  ControlID="TextBox1" Name="urunadii" PropertyName="Text"  Type="String" />
            </SelectParameters>--%>
Bu kodu SqlDataSource içersine yerleştirdiğimiz zaman ilk başta datalist gizli gelir daha sonra gizli datalist içerisnden sadece tam adı doğru bir şekilde yazıldığında sonuc gösterir.

bunu yapmak için ise SqlDataSource SelectCommad sonuna WHERE ([urunadi] = @urunadii) eklenir.

Buton Ara

protected void Button2_Click(object sender, EventArgs e)
    {
        SqlDataSource1.FilterExpression = "urunadi like '{0}%'";

        SqlDataSource1.FilterParameters.Add(new ControlParameter("urunadi", "TextBox1", "Text"));
       
    }




Buton Göster Ekranı


protected void DataList1_ItemCommand(object source, DataListCommandEventArgs e)
    {
        if(e.CommandName=="datalistdene")
        {
            Response.Redirect("datalistdenegor.aspx?id="+e.CommandArgument.ToString());
        }
    }




         

Hiç yorum yok:

Yorum Gönder