Farklı Bir Sayfa Title Oluşturma Yöntemi

Etiket : Title Oluşturma

Programlama yaparken hep karmaşadan sıyrılıp daha düzenli daha sade kodlar yazmaya çabalarız. Yapımız sade veya karmaşık olsun en az kod satırı sayısı ile işin içinden çıkmak isteriz. Bunun için elbette Object-oriented programlama yönteminin bize sunmuş olduğu nimetlerden faydalanırız. Nesneye dayalı programlamada ekrana “Merhaba” yazmanın bile binbir türlü yöntemini oluşturabiliriz.

 
Şu da var ki; Amacımız sadece en az kod satırıyla işin içinden sıyrılmak olmamalı. Lakin, karmaşık gibi görünen gayet basit algoritmalarda bile, kompleks düşündüğümüz ve kompleks düşündüğümüz için de basit halde olan yapıyı daha da karmaşıklaştırdığımız mantıksız yöntemler uygulayabiliyoruz. Bugün sizinle paylaşmak istediğim title oluşturma yönteminin doğru ve sağlıklı bir yöntem olup olmadığını kestiremedim açıkçası fakat bazı uygulamalarımda hala kullanıyorum. Daha iyi bir yöntem keşfettiğimde mutlaka sizinle paylaşacağımdan emin olabilirsiniz.
 
Title.cs:
 
using System.Web.UI;
 
public class Title
{
    public Title() { }
 
    public Title(Page p)
    {
        try { p.Header.Title = SayfaTitle(p.GetType().Name) + " - " + new GenelAyar().DomainName; }
        catch { }
    }
 
    public Title(Page p, object title, bool bas_son)
    {
        try
        {
            string bas = null, son = null;
            if (bas_son) bas = title + " "; else son = " " + title;
 
            p.Header.Title = bas + SayfaTitle(p.GetType().Name) + son + " - " + new GenelAyar().DomainName;
        }
        catch { }
    }
 
    public Title(Page p, object title)
    {
        try
        { p.Header.Title = title + " - " + new GenelAyar().DomainName; }
        catch { }
    }
 
    private string SayfaTitle(string sayfaName)
    {
        string _title = null;
        switch (sayfaName)
        {
            case "uyekayit_aspx": _title = "Üye Kayıt"; break;
            case "uyegiris_aspx": _title = "Üye Giriş"; break;
            case "sifremiunuttum_aspx": _title = "Şifremi Unuttum"; break;
            case "aktivasyon_aspx": _title = "Aktivasyon"; break;
            case "admin_giris_aspx": _title = "Admin Giriş"; break;
            case "sepetim_aspx": _title = "Sepetim"; break;
            case "listelerim_aspx": _title = "Listelerim"; break;
 
            default:
                break;
        }
 
        return _title;
    } 
Switch-case bloğunda karşılaştırma yaptığımız string’ler sayfa isimlerini temsil ediyor. Örneğin sayfamızın adı “UyeYonetimPaneli.aspx” ise bunu “uyeyonetimpaneli_aspx” olarak yazmamız gerekiyor. Eğer sayfa bir dizinin içinde bulunuyorsa, örn: “Admin/Giris.aspx” her dizin için “_” ekliyoruz: “admin_giris_aspx”
 
 
 
Bundan sonra yapmamız gereken ufak birşey kalıyor geriye. Title eklemek istediğimiz her sayfanın Page_Load eventine aşağıdaki gibi küçük bir satır ekliyoruz.
 
UyeKayit.aspx.cs:
 
 
 
protected void Page_Load(object sender, EventArgs e)
{
    new Title(this.Page);
}
Bir önceki yazımız olan Fck Editör Türkçe Karaktere Dönüştürme başlıklı makalemizde asp, asp.net ve c# hakkında bilgiler verilmektedir.


  • Delilik süphesiz aptallıktan daha iyidir,
    delilik var olmuş bir zekanın yok oluşudur.
    Aptallık ise var olmamış bir zekanın var olmamaya devam edişidir !

Blog Kategori

Son Blog Yazıları