• ASP.NET DataList Custom Paging

    Bu Makalemizde DataList İle Custom Paging Yapacağız Haliyle DataList’in Sayfalama Yapısı Olmadığı İçin Custom Paging
    Yapacağız,Dilerseniz Sözü Fazla Uzatmadan Örneklerime Geçmek İstiyorum.
    Projemiz İçin Bi Veritabanı Oluşturalım Ben SQL SERVER İle Paging Adında Bir Veritabanı Oluşturdum Ve İçerisine Products Diye
    Yeni Bir Tablo Oluşturdum,Veritabanı Örneğini Aşağıdaki Gibi Tasarlayabiliriz.
    CREATE DATABASE Paging
    GO
    USE Paging
    CREATE TABLE Products
    (
    ProductID Int Identity(1,1) NOT NULL,
    Description Nvarchar(100) NULL,
    ProductImage Nvarchar(60) NOT NULL,
    UnitCost Money NOT NULL,
    CONSTRAINT PK_Products_ProductID PRIMARY KEY(ProductID)
    )

    Burada Resimlerimizin Yolunu Yazıyoruz,Bunun Yerine Resimlerimiz İçin Bir Image Kolonu Oluşturup Resimlerimizi Direkt Veritabanına,
    Kaydedebilirdik Ama VeriTabanı Performansı Açısından Pek Tavsiye Edilen Bir Yöntem Değildir.
    Artık Veritabanımızdaki Tablomuzun İçine Kayıtları Girebiliriz.VeriTabanı Kısmını Bitirdiğimize Göre Artık ASP.NET Tarafına Geçebiliriz.
    Visual Studio İle Yeni Bir ASP.NET Projesi Oluşturalım. Ve Aşağıdaki Gibi Yapımızı Tasarlıyalım.
    <p>
    <asp:DataList
    ID=”ProductsDefaultPaging” runat=”server” Width=”60%”
    RepeatColumns=”2″ EnableViewState=”false” ItemStyle-ForeColor=”White” ItemStyle-BackColor=”Black”
    DataSourceID=”ObjectDataSource1″ Height=”170px”>

    <ItemTemplate>

    <asp:Table ID=”Table1″ runat=”server”>
    <asp:TableRow>
    <asp:TableCell>
    <b>Açıklama :</b>&nbsp;
    <b><asp:Label ID=”lblDescription” runat=”server” Text=’<%# Eval(“Description”) %>’></asp:Label></b>
    </asp:TableCell>
    </asp:TableRow>

    <asp:TableRow>
    <asp:TableCell>
    <img src=’<%# Eval(“ProductImage”,”images/{0}”) %>’ alt=”Resimler” width=”100″ height=”75″ />
    </asp:TableCell>
    </asp:TableRow>

    <asp:TableRow>
    <asp:TableCell>
    <b>Fiyatı :</b>&nbsp;
    <b><asp:Label ID=”lblUnitCost” runat=”server” Text=’<%# String.Format(“{0:C}”,Eval(“UnitCost”)) %>’></asp:Label></b>
    </asp:TableCell>
    </asp:TableRow>
    </asp:Table>

    </ItemTemplate>

    <ItemStyle Width=”50%” />
    </asp:DataList>

    <asp:ObjectDataSource
    ID=”ObjectDataSource1″ runat=”server”
    TypeName=”Urunum” SelectMethod=”GetPagedDataSource”
    onselected=”ObjectDataSource1_Selected”>

    <SelectParameters>
    <asp:QueryStringParameter Name=”pageIndex” Type=”Int32″ DefaultValue=”0″ QueryStringField=”pageIndex” />
    <asp:QueryStringParameter Name=”pageSize” Type=”Int32″ DefaultValue=”4″ QueryStringField=”pageSize” />
    </SelectParameters>

    </asp:ObjectDataSource>

    </p>

    <p align=”center”>
    <asp:LinkButton ID=”FirstPage” Text=”<< İlk” runat=”server”
    onclick=”FirstPage_Click”></asp:LinkButton>&nbsp;
    <asp:LinkButton ID=”PrevPage” Text=”< Önceki” runat=”server”
    onclick=”PrevPage_Click”></asp:LinkButton>&nbsp;
    <asp:LinkButton ID=”NextPage” Text=”Sonraki >” runat=”server”
    onclick=”NextPage_Click”></asp:LinkButton>&nbsp;
    <asp:LinkButton  ID=”LastPage” Text=”Son >>” runat=”server”
    onclick=”LastPage_Click”></asp:LinkButton>
    </p>

    <p align=”center”>
    <asp:Label ID=”lblCurrentPage” runat=”server”></asp:Label>
    </p>
    Evet Şekildeki Tasarımımızı Yaptıktan Sonra Projemiz Üzerinde Sağ Click Add New Item Ve Resimde Görüldüğü Gibi Eleman DataSetimizi Projemize Ekliyoruz.
    Evet Önümüze Boş Bir Yapı Geldi Bu Boş Yapının İçerisinde Sağ Click Diyoruz, Ve Add  TableAdapter Diyoruz  NewConnection Diyerek Veritabanımıza Bağlantımızı,
    OluÅŸturuyoruz.TestConnection’mız baÅŸarılı OlduÄŸuna Göre Artık Okey Deyip Bir Sonraki Adıma Geçebiliriz.Resimleri Takip Etmemiz Yeterli, TableAdadpter İle,
    İşimizi Bitirdikten Sonra Projemize Yeni Bir Class Ekliyoruz Ben Urunum Diye Bir Class Ekledim Ve Resimdeki Gibi Tasarlıyoruz. NameSpace’leri Eklemeyi Unutmuyoruz,
    Aralarında Bir Boşluk Bıraktım. Evet Artık Kod Tarafına Geçebiliriz. Ve Kodlarımızı Resimdeki Gibi Yazabiliriz. DataListimiz İçin Custom Paging Projemizi,
    Bitirtik Arkadaşlar, Unutmadan Veritabanımıza Kayıt Ettiğimiz Resim Yoları İçin Projemize Sağ Clik Yeni Bir Klasör Oluşturup images klasörü içine resimlerimizi,
    Koyabiliriz.Yoksa Resimlerimiz Görünmeyecektir.datasetekle

    tableadapterekle

    tableadapterbaglanti

    tableadapterbaglantioldu

    baglanti

    baglanti1

    baglanti2

    baglanti3

    baglanti4

    baglanti5

    baglanti6

    baglanti7

    Yukarıdaki Uyarıyı Tabloma Primary Key Eklemediğim İçin Veriyor,Ben Primary Key Eklemedim Hayır Diyerek Geçdim.Dilerseniz Siz Ekleyebilirsiniz.

    baglanti8

    baglanti9

    urunumclass

    kod

    kod1

    paging

    Bir Sonraki Makalemde GridView Custom Paging Ve Custom Sorting Yapacağız, Bir Sonraki Makalede Görüşmek Üzere.

    Blog Widget by LinkWithin

    Etiketler:, , , ,

Yorum Yapın

You must be logged in to post a comment.