Asp.net'de Dinamik MetaTag

Günümüzde web siteleri arasındaki keywords ve description gibi kelimeler adeta arama mottoru tabanlı bir savaş haline geldi.

Günümüzde web siteleri arasındaki keywords ve description gibi kelimeler adeta arama mottoru tabanlı bir savaş haline geldi.

Dinamik Web Uygulamalarrında çoğu zaman keywords,title yada description gibi meta tagleri veritabanından çekip, biraz daha etkin kullanmak hepimizin yaptığı bir atak diyebiliriz. Bununla ilgili bir örneği C# tarafında GenericList koleksiyonunu etkin kullanarak bir örnekle belirtmeye çalışacağım.

//Mssql tarafında SiteAyarlari adında bir tablom var ve c# tarafında bu tablolara karşılık gelen yine SiteAyarlari adında bir Class'ım var. Ben burda Linq To Sql ORM yapısını kullanarak yaptım. Custom bir class yada farklı bir ORM kullanılabilir. Static bir metot yazıyorum ve geriye SiteAyarlari tipinden Generic List döndürsün.Heryerden erişebilmek adına metodumu static yaptım.


public static List<SiteAyarlari> GetSiteAyarlari()

     {

    //linqtoSql kullandığım  için DataContext nesnemi tanımlıyorum.

         veriDataContext data=new veriDataContext();

         var siteayarlari = from site in data.SiteAyarlaris

                            select site;

         return siteayarlari.ToList();

     }





//yukarıda yazdığımız metodu tüm sayfalarda kullanabileceğiz.



 if (!Page.IsPostBack)

        {

        //ilgili sayfamın Page_Load eventında SiteAyarlari tipinden generic list koleksiyon tanımlıyorum ve yazdığım metodda geriye SiteAyarlari tipinden generic List döndürdüğü için burada ilgili koleksiyona metodu verebiliyorum.

            List<SiteAyarlari> ayarlar = new List<SiteAyarlari>();

            ayarlar = GetSiteAyarlari();

        //ilgili nesnemin içerisinde var tipinden dönerek içerisindeki property'leri alabiliyorum ki bunların hepsi aslında sql tarafındaki tablomda column(kolon) olarak var.dolyısı ile gelecek olan veriler benim veritabanına girdiğim veriler.

            foreach (var item in ayarlar)

            {

        //HtmlMeta nesnesi oluşturuyorum.

                HtmlMeta description = new HtmlMeta();

        //ilgili nesneyi header kontrolüne ekliyorum.

                Header.Controls.Add(description);

        //artık ilgili nesne üzerinde meta taglar oluşturabiliyorum

                description.Name = "description";

        //ve bu meta taglara değer verebiliyorum.bu arada değer veritabanındakı Description kolonundan Classımızın property'si sayesinde geliyor.

                description.Content = item.Description.ToString();

        //aynı şekilde keywords içinde yeni bir HtmLMeta nesnesi oluşturup aynı adımları uyguluyorum.bu örnekler çoğaltılabilir.    

                HtmlMeta keywords = new HtmlMeta();

                Header.Controls.Add(keywords);

                keywords.Name = "keywords";

                keywords.Content = item.Keywords.ToString();



            }

                        

        }

  • Etiketler;
Mustafa Ülkü
www.gezicez.com
Yorum Yaz

Yorum yazabilmek için üye girişi yapmanız gerekiyor!

Yukarı Git