[英]ASP.NET C# CodeBehind DB Filter a GridView with a textbox
I have to filter the Registration Date of people, but I don't know how I can do. 我必须过滤人员的注册日期,但是我不知道该怎么办。
My grid view: 我的网格视图:
<asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:UtentiRegistratiConnectionString1 %>" DeleteCommand="DELETE FROM [Utenti] WHERE [Id] = @Id" InsertCommand="INSERT INTO [Utenti] ([Nome], [Cognome], [Cellulare], [CodiceFiscale], [IndirizzoEmail], [Password], [Prenotazioni], [Acquisti], [Bonus], [DataRegistrazione]) VALUES (@Nome, @Cognome, @Cellulare, @CodiceFiscale, @IndirizzoEmail, @Password, @Prenotazioni, @Acquisti, @Bonus, @DataRegistrazione)" SelectCommand="SELECT [Id], [Nome], [Cognome], [Cellulare], [CodiceFiscale], [IndirizzoEmail], [Password], [Prenotazioni], [Acquisti], [Bonus], [DataRegistrazione] FROM [Utenti]" UpdateCommand="UPDATE [Utenti] SET [Nome] = @Nome, [Cognome] = @Cognome, [Cellulare] = @Cellulare, [CodiceFiscale] = @CodiceFiscale, [IndirizzoEmail] = @IndirizzoEmail, [Password] = @Password, [Prenotazioni] = @Prenotazioni, [Acquisti] = @Acquisti, [Bonus] = @Bonus, [DataRegistrazione] = @DataRegistrazione WHERE [Id] = @Id">
<DeleteParameters>
<asp:Parameter Name="Id" Type="Int32" />
</DeleteParameters>
<InsertParameters>
<asp:Parameter Name="Nome" Type="String" />
<asp:Parameter Name="Cognome" Type="String" />
<asp:Parameter Name="Cellulare" Type="String" />
<asp:Parameter Name="CodiceFiscale" Type="String" />
<asp:Parameter Name="IndirizzoEmail" Type="String" />
<asp:Parameter Name="Password" Type="String" />
<asp:Parameter Name="Prenotazioni" Type="Int32" />
<asp:Parameter Name="Acquisti" Type="Int32" />
<asp:Parameter Name="Bonus" Type="String" />
<asp:Parameter DbType="DateTime2" Name="DataRegistrazione" />
</InsertParameters>
<UpdateParameters>
<asp:Parameter Name="Nome" Type="String" />
<asp:Parameter Name="Cognome" Type="String" />
<asp:Parameter Name="Cellulare" Type="String" />
<asp:Parameter Name="CodiceFiscale" Type="String" />
<asp:Parameter Name="IndirizzoEmail" Type="String" />
<asp:Parameter Name="Password" Type="String" />
<asp:Parameter Name="Prenotazioni" Type="Int32" />
<asp:Parameter Name="Acquisti" Type="Int32" />
<asp:Parameter Name="Bonus" Type="String" />
<asp:Parameter DbType="DateTime2" Name="DataRegistrazione" />
<asp:Parameter Name="Id" Type="Int32" />
</UpdateParameters>
</asp:SqlDataSource>
Data di Registrazione: Da
<asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
a
<asp:TextBox ID="TextBox4" runat="server"></asp:TextBox>
<asp:Button ID="Button2" runat="server" OnClick="Button2_Click" Text="Filtra" CssClass="filtra" />
<asp:GridView ID="GridView1" runat="server" AllowPaging="True" AllowSorting="True" AutoGenerateColumns="False" DataKeyNames="Id" DataSourceID="SqlDataSource1" EmptyDataText="Nessun record di dati da visualizzare." Font-Size="Small" PageSize="15">
<Columns>
<asp:CommandField ShowDeleteButton="True" ShowEditButton="True" />
<asp:BoundField DataField="Id" HeaderText="Id" InsertVisible="False" ReadOnly="True" SortExpression="Id" />
<asp:BoundField DataField="Nome" HeaderText="Nome" SortExpression="Nome" />
<asp:BoundField DataField="Cognome" HeaderText="Cognome" SortExpression="Cognome" />
<asp:BoundField DataField="Cellulare" HeaderText="Cellulare" SortExpression="Cellulare" />
<asp:BoundField DataField="CodiceFiscale" HeaderText="CodiceFiscale" SortExpression="CodiceFiscale" />
<asp:BoundField DataField="IndirizzoEmail" HeaderText="IndirizzoEmail" SortExpression="IndirizzoEmail" />
<asp:BoundField DataField="Password" HeaderText="Password" SortExpression="Password" />
<asp:BoundField DataField="Prenotazioni" HeaderText="Prenotazioni" SortExpression="Prenotazioni" />
<asp:BoundField DataField="Acquisti" HeaderText="Acquisti" SortExpression="Acquisti" />
<asp:BoundField DataField="Bonus" HeaderText="Bonus" SortExpression="Bonus" />
<asp:BoundField DataField="DataRegistrazione" HeaderText="DataRegistrazione" SortExpression="DataRegistrazione" />
</Columns>
</asp:GridView>
In the CodeBehind I have tried: 在CodeBehind中,我尝试过:
protected void Button2_Click(object sender, EventArgs e)
{
DateTime datada = DateTime.Parse(TextBox3.Text);
DateTime dataa = DateTime.Parse(TextBox4.Text).AddDays(1);
SqlDataSource Prova = new SqlDataSource();
Prova.SelectCommand = "Select * from Utenti where DataRegistrazione>=@vdadatareg and DataRegistrazione<=@vadatareg";
Prova.ID = "proviamoci";
GridView1.DataSourceID = Prova.ID;
}
Or: 要么:
protected void Button2_Click(object sender, EventArgs e)
{
SqlConnection con = new SqlConnection(strcon);
SqlCommand cmd = new SqlCommand("Select * from Utenti order by Id Asc", con);
SqlDataAdapter adp = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
con.Open();
adp.Fill(ds, "Utenti");
cmd.ExecuteNonQuery();
con.Close();
GridView1.DataSource = ds;
GridView1.DataBind();
}
But they doesn't work... How I can do? 但是它们不起作用...我该怎么办? I need to filter the gridview.
我需要过滤gridview。 I have to put a "Registration date" -> from "date" to "date".
我必须将“注册日期”->从“日期”更改为“日期”。
Don't care about the control type: (sample) 不在乎控件类型:(样本)
<asp:sqldatasource
id="SqlDataSource1"
runat="server"
connectionstring="<%$ ConnectionStrings:MyNorthwind%>"
selectcommand="SELECT LastName FROM Employees WHERE Title = @Title">
<selectparameters>
<asp:controlparameter name="Title" controlid="yourTextBox" propertyname="Text"/>
</selectparameters>
</asp:sqldatasource>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.