Torna al Thread
using System;
using System.Collections.Generic;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.Odbc;
using System.Configuration;
using System.Data;
public partial class gallery_gallery : System.Web.UI.Page
{
String connectionString = ConfigurationManager.ConnectionStrings["Personal"].ConnectionString;
// istanziamo la classe pagedDataSource
public PagedDataSource pagedData = new PagedDataSource();
// funzione che estrae i dati delle foto e la assegno ad un DataTable che mi restituisce il dataset
public DataTable GetFoto()
{
//recupero la stringa di connessione dal web.config
DataSet MioDs = new DataSet();
OdbcConnection objConn = new OdbcConnection(connectionString);
try
{
objConn.Open();
string sqlStr = "SELECT * FROM comuni ";
//utilizzo un OleDbDataAdapter e il metodo Fill
OdbcDataAdapter MyAdapter = new OdbcDataAdapter(sqlStr, objConn);
MyAdapter.Fill(MioDs, "comuni");
}
catch (Exception ex)
{
Response.Write("" + ex.ToString() + "");
}
finally
{
objConn.Dispose();
}
//restituisco il datatable
return MioDs.Tables["comuni"].Copy();
}
public void dopaging()
{
//Assegno alla classe pageddatasource la sorgente dati
pagedData.DataSource = GetFoto().DefaultView;
//Attivo il Paging e imposto il numero di record da mostrare per ogni pagina
pagedData.AllowPaging = true;
pagedData.PageSize = 50;
//le eccezioni
try
{
pagedData.CurrentPageIndex = (int)Int32.Parse(Request.QueryString["Page"]);
}
catch (Exception ex)
{
pagedData.CurrentPageIndex = 0;
Response.Write("" + ex.ToString() + ""); / Errore Qui., Come posso risolvere?.
}
// visibili o invisibili i pulsanti di navigazione next e prev
lbtnPrev.Visible = (!pagedData.IsFirstPage);
lbtnNext.Visible = (!pagedData.IsLastPage);
//collego la sorgente dati al datalist
dlGallery.DataSource = pagedData;
dlGallery.DataKeyField = "comune";
dlGallery.DataBind();
}
protected void Page_Load(object sender, System.EventArgs e)
{
dopaging();
}
protected void lbtnNext_Click(object sender, EventArgs e)
{
Response.Redirect(Request.CurrentExecutionFilePath + "?Page=" + (pagedData.CurrentPageIndex + 1));
}
protected void lbtnPrev_Click(object sender, EventArgs e)
{
//passo i parametri
Response.Redirect(Request.CurrentExecutionFilePath + "?Page=" + (pagedData.CurrentPageIndex - 1));
}
}