Ciao a tutti,
sono un newbie di .NET
Ho realizzato una pagina che recupera dati da un db su una query articolata e popola una gridview.
Il codice:
senda_Click popola correttamente il gridview.codice:protected void senda_Click(object sender, EventArgs e) { selectSQL = "SELECT IDIntervento, marca, tipo, macchina, TipologiaInconvenienti, RagioneSociale, PartitaIVA, NomeTecnico, CognomeTecnico, DataInizio, DataFine, sospeso FROM interventi WHERE IDIntervento IS NOT null"; if (listTecnico.SelectedItem.Value != "vuoto") { selectSQL += " AND IDtecnici='" + listTecnico.SelectedItem.Value + "'"; } if (listMarca.SelectedItem.Value != "vuoto") { selectSQL += " AND IDMarca='" + listMarca.SelectedItem.Value + "'"; } if (listMacchina.SelectedItem.Value != "vuoto") { selectSQL += " AND idmacchina='" + listMacchina.SelectedItem.Value + "'"; } if (Calendar1.SelectedDate.ToShortDateString() != null && Calendar1.SelectedDate.ToShortDateString()!="01/01/0001") { selectSQL += " AND DataInizio>'" + Calendar1.SelectedDate.ToShortDateString() + "'"; } if (Calendar2.SelectedDate.ToShortDateString() != null && Calendar2.SelectedDate.ToShortDateString() != "01/01/0001") { selectSQL += " AND DataFine<'" + Calendar2.SelectedDate.ToShortDateString() + "'"; } lblResults.Text = selectSQL; //selectSQL += " AND IDtecnici='" + listTecnico.SelectedItem.Value + "' AND IDMarca='" + listMarca.SelectedItem.Value + "' AND idmacchina='" + listMacchina.SelectedItem.Value + "'"; buildPage(); //GridView1.PageIndex = e.NewPageIndex; } private void buildPage() { SqlConnection con = new SqlConnection(connectionString); try { SqlCommand cmd = new SqlCommand(selectSQL, con); SqlDataAdapter adapter = new SqlDataAdapter(cmd); // Fill the DataSet. DataSet ds = new DataSet(); adapter.Fill(ds, "interventi"); GridView1.DataSource = ds; GridView1.DataBind(); } catch (Exception err) { lblResults.Text = "Errore!"; lblResults.Text += err.Message; } finally { con.Close(); } } protected void gridView_PageIndexChanging(object sender, GridViewPageEventArgs e) { GridView1.PageIndex = e.NewPageIndex; buildPage(); //GridView1.DataBind(); }
al cambio di pagina, invocando gridView_PageIndexChanging, ottengo il seguente errore:
ExecuteReader: la proprietà CommandText non è stata inizializzata.
Non capisco dove intervenire..

Rispondi quotando