ASP.NET BreadCrumb Class' ı (Neredeyim? şeysi)

17.04.2005

Okuyucu : 2.249
Günlük Okuyucu : 2

Sitelerdeki klasik neredeyim "Bread Crumbs" diye tabir edilen kısımdan yapmam gerekiyordu. Aynı zamanda kategorilerden recursive olarak yukarı tırmanmam gerektiğinden dolayı Last-in First-Out stili bir yapıya sahip olamlıydı. Klasik Arraylist vs. bu işi pek kesmeyeceğinden daha doğrusu gereksiz uğraştıracağından basitçe bir Collections.Stack' i inherit eden bir class yazdım.

Kritik bir nokta ben "pop" ile içeridekileri dışarı çıkartıyorum bu durumda içerideki stringi bir defa kullanabilirsiniz daha eğer stringin kalmasını istiyorsanız Enumarator oluşturun, bir diğer konuda biraz daha performans artırmak için string içerideki bir property ye set edebilir ve sadece bir defa başta oluşturabiliriz. Ancak tabii ki bu kodu tamamen nasıl kullanacağınıza bağlı. Örneği vermemin temel sebebi kendi basit işlemlerinizi mevcut .NET Framework' ün inherit edilebilir class' ları aracılığı ile basitçe yapabileceğiniz göstermek istemem.

İşinize yarayabilir;

        Public Class BreadCrumb
       
Inherits Collections.Stack

       
Sub New ()
           
MyBase . New ()
       
End Sub

        Public Overloads Sub Add( ByVal Link As String , ByVal Name As String , Optional ByVal Description As String = "" )
           
MyBase .Push( " <a href="" " & Link & " "" title="" " & Description & " ""> " & Name & " </a> " )
       
End Sub

        Public Shadows Function ToString() As String
            Dim breadSBuilder As New StringBuilder( 100 * MyBase .Count)

           
For i As Integer = 0 To MyBase .Count - 1
               breadSBuilder.Append( MyBase .Pop)
               
If MyBase .Count > 0 Then breadSBuilder.Append( " &#187 " )
           
Next i

           
Return breadSBuilder.ToString()
       
End Function

        Public Overloads Sub Add( ByVal Category As CategoryRow)
           Add(
" /category/? " & Category.ID, Category.Category, Category.Description)
       
End Sub

    End Class

Yorumlar

RSS Bu makalenin yorumlarını RSS ile takip et!

Verdiğiniz ASP kodları çok işime yarıyor gerçekten.ASP.Net,ASP,HTML yani elinizde hangisi veya hangileri varsa,sayfada IPyi algılamak,ve IPyi kaydetmek için neler yapmak gerekir'i anlatabilirseniz çok sevinirim,saygılar..

Utku Tanrıvere [ # | 19.04.2005 ]

Yorum Ekle





Kullanılabilir Taglar : [<blockquote>] [<strong>] [<em>]

Diğer Yazılar

Neredeyim ?

Ferruh.Mavituna » Haberler » ASP.NET BreadCrumb Class' ı (Neredeyim? şeysi)

Ferruh Mavituna
© 2002-2007, Ferruh Mavituna

Sabit IP Adresi : 81.22.99.133, SSL Erişimi, Hakkında