Sem GÖKSU - Kişisel Web Sitesi Ana Sayfa | Hakkımda | Çalışmalarım | Kitap Önerileri | Fotoğraflarım | RSS RSS | İletişim
İçerik Kategorileri
Makale Kategorileri
Etiket Bulutu
Arama
Tema
Kaynaklar
Takip Ettiklerim

LinqToSQL

LinqToSQL ile Sayfalama (Paging) İşlemi


SQL Server 2005 ile birlikte gelen row_number() fonksiyonunu kullanarak bir kayıt numarası oluşturuyor ve bu kayıt numarasını kullanarak verileri istediğimiz sayıda çekebiliyorduk. LinqToSQL ile de bu işlemi yapabiliyoruz. Aşağıdaki örnek City Tablosundan kayıtların onar onar alınmasını sağlıyor.

[C#]

class Program
{
    static void Main(string[] args)
    {
        int CityCount = 0; 
        IEnumerable<City> Cities = GetCities(0, 10, ref CityCount); // İlk 10 kaydı çekeceğiz. ilk parametre sayfa indexini ikinci parametre ise bir sayfada kaç kayıt gösterileceğini belirtiyor.
        Console.WriteLine("Toplam Şehir Sayısı:{0}", CityCount); 
        Console.WriteLine("-----------------------------");
        foreach (City city in Cities)
        {
            Console.WriteLine(city.CityName);
        }
    }

    private static IEnumerable<City> GetCities(int startingPageIndex, int PageSize, ref int CityCount)
    {
        DataClasses1DataContext db = new DataClasses1DataContext();
        CityCount = db.Cities.Count();// Toplam kayıt sayısını set edelim.
        return db.Cities.Skip<City>(PageSize * startingPageIndex).Take<City>(PageSize); 
    }
}

Bu makaleye henüz yorum yapılmamış. | 09.11.2009 15:27:19

Ana Sayfa | Hakkımda | Çalışmalarım | Kitap Önerileri | Fotoğraflarım | RSS | İletişim
Sem Göksu 2004-2009 © Tüm Hakları Saklıdır.