Site içi arama

Asp.NET 4.0 URL Routing ile Google dostu linkler

30 Ekim 2013 Çarşamba0 yorum

Bu yazıda linkleri Google'ın daha çok sevdiği hale getirmeyi anlatacağım. Google, Konu/1/Asp-NET-URL-Routing şeklindeki bağlantıları Konu.aspx?id=1 gibi bir bağlantıdan daha çok seviyor.

İnternette URL Routing ile ilgili yazılara baktığınızda yazarlar tarafından oldukça karışık yöntemler kullanıldığını görebilirsiniz. Ben bu yazıda basit bir şekilde anlatmaya çalıştım. DataList'ler ya da HyperLink'ler kullanmadım.


MySQL veritabanından DataReader ile veri çekme yazısını buraya tıklayarak okuyabilirsiniz.

Veritabanı tablomuzda id ve konu_baslik alanlarının olduğunu varsayalım.

İlk olarak projemize Global.asax dosyamı ekliyorum.


İçerisine aşağıdaki kodları yazıyorum.

<%@ Application Language="C#" %>
<%@ Import Namespace="System.Web.Routing" %>
<script runat="server"> 
void Application_Start(object sender, EventArgs e) 
{
    RouteTable.Routes.Add("Konu", new Route("Konu/{id}/{baslik}", new PageRouteHandler("~/Konu.aspx")));  

</script>

DataReader ile verileri çekerken link olarak yönlendireceğim linki giriyorum. Yani

while (dr.Read()) 
        {
            Label1.Text = Label1.Text + "<a href='/Konu/" + dr["id"] + "/" + _temizle.UrlCevir(dr["konu_baslik"].ToString()) +"'>" + dr["konu_baslik"] + "</a>";
        }

Şeklinde linkleri gösteriyorum.

Son olarak Konu.aspx.cs dosyasınd id değerini alıp WHERE komutu ile veritabanından uygun değerleri çekiyorum.

id değerini

string id = RouteData.Values["id"].ToString();

kodu yardımıyla alıyorum.

Umarım yardımcı olabilmişimdir. Sorularınızı yazının altından sorarsanız elimden geldiğince cevaplamaya çalışırım. İyi çalışmalar ...
 
Copyright © 2014. Bilgisayar Mühendisliği Öğrenci Blogu - All Rights Reserved
Proudly powered by Blogger