Kendi Gridinizi Yazın - Hem daha performanslı Gönderen: vectorman Tarih: 04 December 2007 21:39:12
Notice: Undefined index: current_action in /home/del10000/domains/delphidunyasi.net/public_html/Sources/Subs.php on line 2391
normalde grid kontrolü biraz ağır çalışıyor. nedeni de toplu select gönderildiği için. sql serverda çok hızlı sonuç döndüren bir select komutu ile daha performanslı sayfalar hazırlayıp gride benzer bir çalışma yaptım. buradan yola çıkarak kendi gridinizi oluşturabilirsiniz. kodlar c#.ama uyarlaması kolay.
SqlConnection baglanti = new SqlConnection();
baglanti.ConnectionString = "Data Source=mssql.logmania.com;Initial Catalog=logmacom_logo;User ID=logo; Password=logcu635635;";
SqlCommand komut = new SqlCommand();
komut.CommandText = "SELECT * FROM ("
+"SELECT TOP 10 * FROM ( " // toplam en kaç kayıt seçeceksin
+"SELECT TOP 10 * " // seçtiğin kaydın içinden kayıt. bu kadar kayıt döner.
+"FROM loglar "
+"ORDER BY id desc) as foo "
+"ORDER by id asc) as bar "
+"ORDER by id desc";
SqlDataAdapter SqlDataAdapter1 = new SqlDataAdapter(komut) ;
SqlDataAdapter1.SelectCommand = komut;
DataSet DataSet1 = new DataSet();
komut.Connection = baglanti;
baglanti.Open();
SqlDataAdapter1.Fill(DataSet1,0,10, "loglar");
int hucre = DataSet1.Tables["loglar"].Columns.Count;
int i,j;
i = 0;
j = 0;
Response.Write("satir :" + DataSet1.Tables["loglar"].Rows.Count + " sütün:" + DataSet1.Tables["loglar"].Columns.Count);
Response.Write("<table border=1>");
for (i=0;i<DataSet1.Tables["loglar"].Rows.Count;i++)
{
//ilk satırsa başlıkları getir
if (i == 0)
{
Response.Write("<tr>");
for (j = 0; j < hucre; j++)
{
Response.Write("<td bgcolor=999999>");
Response.Write(DataSet1.Tables["loglar"].Columns[j]);
Response.Write("</td>");
}
Response.Write("</tr>");
}
Response.Write("<tr>");
j = 0;
for (j = 0; j < hucre; j++)
{
Response.Write("<td>");
Response.Write(DataSet1.Tables["loglar"].Rows[j]);
Response.Write("</td>");
}
Response.Write("</tr>");
}
Response.Write("</table>");
baglanti.Close();