(Kategoriler : Asp.NET | Güncel | Etiketler : Asp.NET | Url Routing | Eklenme Tarihi : 2010/01/25 03:46 VM. | Yorum Sayısı : 0 )

Merhaba arkadaşlar;

Bu makalemizde Asp.NET ile birlikte gelen URL Routing özelliğini inceleyeceğiz. Aslında bu özelliği biz daha önceden URL Rewriting olarak kulanıyorduk. Asp.NET Beta2 ile birlikte artık karşımıza URL Routing olarak çıkıyor.

Peki Nedir bu URL Routing ?

URL Routing; URL'lerimizin daha anlaşılır hale gelmesini sağlar ve URL okunabilme kolaylığından dolayı sitemizin Google gibi arama motorlarında daha üst sıralarda çıkmasını sağlar. Sitemizde Urun.aspx?Kategori=Elektronik&Urun=Bilgisayar olarak link verip daha sonrasında da Querystring'le Kategori ve Urun'ü çağırarak işlemlerimizi yapabiliyoruz. Fakat bunu biraz daha anlaşılır hale getirebiliriz. Örneğin; sitemiz.com/Urun/Elektronik/Bilgisayar gibi link vermemiz hem Url okunabilirliğini arttıracaktır, hemde google gibi arama motorlarında üst sıralarda çıkmamızı sağlayacaktır.

Bunun için öncelikle Asp.NET 4.0 Bir web projesi oluşturuyoruz. Oluşturduğumuz projenin Global.asax dosyası içinde, Application Start metodu içinde yönlendirme işlemlerini ve hangi sayfada işlem yapacağını tanımlıyoruz.

 

void Application_Start(object sender, EventArgs e)
{
RouteTable.Routes.Add("kategori",new Route("Urun/{kategoriadi}", new PageRouteHandler("~/Default.aspx")));
RouteTable.Routes.Add("urun", new Route("Urun/{kategoriadi}/{urunadi}" + ".htm", new PageRouteHandler("~/Default.aspx")));
}

 

Şimdi yönlendirme işlemlerimizi tamamlamış olduk. Daha sonrasında Linklerimizi Urun/-kategoriadi-/-urunadi- olarak verebiliriz. Daha sonrasında PageRouteHandler olarak tanımlamış olduğumuz Default.aspx sayfamızın kod bölümüne geçerek PageLoad event'ine şu kodları yazıyoruz.

 

if (RouteData.Values["urunadi"] != null)
{
Response.Write("Şu an <b> " + RouteData.Values["kategoriadi"].ToString() + " </b> kategorisinde <b> " + RouteData.Values["urunadi"].ToString() + " </b> ürününü inceliyorsunuz.");
}

Global.asax dosyamızda yönlendirmesini yaptığımız URL'yi Default.aspx içinde RouteData.Value ile yakalıyoruz ve işlemlerimizi yaptırabiliyoruz. Ben sadece ekrana hangi kategoride ve hangi üründe olduğunu yazdırdım. Siz gelen parametrelere göre veritabanından verilerinizi çekebilir, ona göre verilerinizi kullanıcıya gösterebilirsiniz. Global.asax içinde tanımlama yaparken {urunadi}" + ".htm" kullanmıştım ben. Siz istediğiniz uzantıyı vererek URL Routing'inizi geliştirebilirsiniz.



Bu makalede sadece URL Routing kullanımını kısaca görmüş olduk. Sonrasında URL Routing özelleştime konusuna değiniyor olacağız.

İyi çalışmalar.

İsmail ŞEN


(Kategoriler : Asp.NET | Csharp / C#.NET | Duyurular | Etkinlikler | Güncel | Linq & Sql | Microsoft | Silverlight | Tasarım & Design | Windows 7 | WPF | Etiketler : Ismailsen.org | Yeni Blog | Blogsa | Eklenme Tarihi : 2010/01/23 04:00 NM. | Yorum Sayısı : 2 )

Merhaba arkadaşlar;

Uzun zamandır blog yazmıyorum, daha doğrusu yazamıyorum. Sorunlardan dolayı blogumu tamamen açıp uzun süre yayında tutamadım. Artık bu tasarımı iyi veya kötü bir blog yayınlayıp, daha sonra üzerinden sadece tasarım değişikliği yapacağım.

Diğer makalelerimin de gerekli gördüklerimi buraya taşıyacağım ve bundan sonra ara vermeden makale yazmayı düşünüyorum. Bu blog uzun süre kalacak diye tahmin ediyorum :) İlk defa içime sinen bir tasarım yaptım, ve tema olarak Blog'sa ya ekledim. Blogsa altyapısı kullanıyor olacağım. Geliştiricileri Erdem Tüzen ve Selçuk Ermaya'ya teşekkür ederim. Ayrıca UrlRewriting olayı için yardımda bulunan Selçuk abiye ayrıca teşekkür edeirm.

Şimdilik bu kadar, bundan sonra buralarda olacağım.