Yazılım.
CevapSitesi.com Beta!
Çözüm Noktası
Facebook, Twitter, Google+ veya e-posta ile paylaşın.
| Sorular | Makaleler | Üyeler | Etiketler  | İletişim
Soru sormak ya da cevap vermek için;
giriş yapın veya üye olun.

Sosyal medya hesaplarınızla da giriş yapabilirsiniz.

Cevap Geçmişi

«« Soruya geri dön
21.06.16 11:38
Bunun için routing (yönlendirme) kullanılıyor. Routing yönteminde, yapılan isteklerdeki web site adresinden sonra gelen kısmın (path) yapısına bakarak uygun sayfalara yönlendirme yapılıyor. Örneğin yapılan istek: http://cevapsitesi.com/urunler/kategori/1 ise, bu adresteki /urunler/kategori/1 kısmına bakılıyor. Bu yönlendirmeler Global.asax dosyası içindeki ApplicationStart olayının içinde tanımlanacak. Global.asax dosyası yoksa Visual Studio'dan oluşturabilirsin. Dosya oluştuğunda zaten Application_Start olayını karşılayan yordamı göreceksin. Tanımlamalar bunun içinde yapılacak. Yönlendirmeler için System.Web.Routing   isim alanı kullanılıyor. Bunu Global.asax dosyanın üstündeki import   bölümünde şöyle bildirmelisin. <%@ import namespace="System.Web.Routing" %> Arkasından Application_Start olayı içinde yönlendirmelerini RouteTable.Routes   statik kolleksiyonununa eklemelisin. RouteCollection sınıfından olan Routes özelliğinin MapPageRoute yöntemiyle yönlendirme ekleniyor. Bunun bir kaç kullanımı var. En temel olanı şöyle: MapPageRoute(Yönlendirme Adı, Yönlendirme Yolu ve parametreler, URL'nin yönlendirileceği gerçek sayfa) Örneğin: void Application_Start(object sender, EventArgs e) { RouteCollection routes = RouteTable.Routes;
routes.MapPageRoute("Ürün Görüntüleme", "Urunler/{KategoriAdi}/{*UrunKimligi}", "~/UrunGoruntule.aspx"); routes.MapPageRoute("Sayfalar", "Sayfalar/{SayfaAdi}", "~/Sayfalar.aspx"); } Bu örnekte iki tane yönlendirme yapılıyor. Süslü parantez içinde verilenler parametreler. UrunKimligi parametresinin yanındaki yıldız bu parametrenin kullanılmayabileceğini bildiriyor. Son parametre ise yönlendirmenin yapılacağı asıl sayfa. Belirtilen bir yönlendirme ile eşleşen bir istek yapıldığında ilgili sayfa yükleniyor. Örneğin birinci yönlendirme ile şunlar eşleşebilir. http://example.com/Urunler/Elbise/4 http://example.com/Urunler/123/BirMetin http://example.com/Urunler/Pantolon http://example.com/Urunler/123 Görüldüğü gibi parametrelerin veri tipi yok, deseni, (Urunler/ metninden sonra bir metin eğer varsa sonra bir / ve bir metin) uysun yeter. Bu bilgiler yönlendirilen sayfaya aynı QueryString (adres çubuğundaki sorgu dizesi) gibi string veriler olarak gidecek ve tipleriyle QueryString'de olduğu gibi ilgili sayfada uğraşacaksın. Yönlendirilen sayfa içinden Page_Load yordamında (veya başka yerde de olabilir); Bir parametrenin gelip gelmediğini test etmek için (örneğin UrunKimligi): if (Page.RouteData.Values.ContainsKey("UrunKimligi")) { ... } Bir parametrenin değerini almak için: (Örneğin http://example.com/Urunler/Elbise/4 şeklinde gelen bir istekteki ürün kimliği parametresine karşılık gelen 4 değerini) string stringUrunKimligi = Page.RouteData.Values["UrunKimligi"); Belirli bir yönlendirme ile bu sayfaya gelinip gelinmediğini öğrenmek için (örneğin "Ürün Görüntüleme"): if (Page.RouteData.Route == RouteTable.Routes["Ürün Görüntüleme"]) { ... } ifadelerini kullanabilirsin. Bir parametre için değer gelmemişse (üstteki http://example.com/Urunler/Pantolon adresindeki gibi), bu değer için boş bir string alırsın. Bunu da; if (stringUrunKimligi == String.Empty) { ... } şeklinde test edebilirsin.
Ekleyen: cevapsitesi
Değiştiren: canora
Cevap olarak seçen: canora
13.06.16 22:33
Bunun için routing (yönlendirme) kullanılıyor. Routing yönteminde, yapılan isteklerdeki web site adresinden sonra gelen kısmın (path) yapısına bakarak uygun sayfalara yönlendirme yapılıyor. Örneğin yapılan istek: http://cevapsitesi.com/urunler/kategori/1 ise, bu adresteki /urunler/kategori/1 kısmına bakılıyor. Bu yönlendirmeler Global.asax dosyası içindeki ApplicationStart olayının içinde tanımlanacak. Global.asax dosyası yoksa Visual Studio'dan oluşturabilirsin. Dosya oluştuğunda zaten Application_Start olayını karşılayan yordamı göreceksin. Tanımlamalar bunun içinde yapılacak. Yönlendirmeler için System.Web.Routing   isim alanı kullanılıyor. Bunu Global.asax dosyanın üstündeki import   bölümünde şöyle bildirmelisin. <%@ import namespace="System.Web.Routing" %> Arkasından Application_Start olayı içinde yönlendirmelerini RouteTable.Routes   statik kolleksiyonununa eklemelisin. RouteCollection sınıfından olan Routes özelliğinin MapPageRoute yöntemiyle yönlendirme ekleniyor. Bunun bir kaç kullanımı var. En temel olanı şöyle: MapPageRoute(Yönlendirme Adı, Yönlendirme Yolu ve parametreler, URL'nin yönlendirileceği gerçek sayfa) Örneğin: void Application_Start(object sender, EventArgs e) { RouteCollection routes = RouteTable.Routes; routes.MapPageRoute("Ürün Görüntüleme", "Urunler/{KategoriAdi}/{*UrunKimligi}", "~/UrunGoruntule.aspx"); routes.MapPageRoute("Sayfalar", "Sayfalar/{SayfaAdi}", "~/Sayfalar.aspx"); } Bu örnekte iki tane yönlendirme yapılıyor. Süslü parantez içinde verilenler parametreler. UrunKimligi parametresinin yanındaki yıldız bu parametrenin kullanılmayabileceğini bildiriyor. Son parametre ise yönlendirmenin yapılacağı asıl sayfa. Belirtilen bir yönlendirme ile eşleşen bir istek yapıldığında ilgili sayfa yükleniyor. Örneğin birinci yönlendirme ile şunlar eşleşebilir. http://example.com/Urunler/Elbise/4 http://example.com/Urunler/123/BirMetin http://example.com/Urunler/Pantolon http://example.com/Urunler/123 Görüldüğü gibi parametrelerin veri tipi yok, biçimi uysun yeter. Bu bilgiler yönlendirilen sayfaya aynı QueryString (adres çubuğundaki sorgu dizesi) gibi string veriler olarak gidecek ve tipleriyle QueryString'de olduğu gibi ilgili sayfada uğraşacaksın. Yönlendirilen sayfa içinden Page_Load yordamında (veya başka yerde de olabilir); Bir parametrenin gelip gelmediğini test etmek için (örneğin UrunKimligi): if (Page.RouteData.Values.ContainsKey("UrunKimligi")) { ... } Bir parametrenin değerini almak için: (Örneğin http://example.com/Urunler/Elbise/4 şeklinde gelen bir istekteki ürün kimliği parametresine karşılık gelen 4 değerini) string stringUrunKimligi = Page.RouteData.Values["UrunKimligi"); Belirli bir yönlendirme ile bu sayfaya gelinip gelinmediğini öğrenmek için (örneğin "Ürün Görüntüleme"): if (Page.RouteData.Route == RouteTable.Routes["Ürün Görüntüleme"]) { ... } ifadelerini kullanabilirsin. Bir parametre için değer gelmemişse (üstteki http://example.com/Urunler/Pantolon adresindeki gibi), bu değer için boş bir string alırsın. Bunu da; if (stringUrunKimligi == String.Empty) { ... } şeklinde test edebilirsin.
Ekleyen: cevapsitesi
Değiştiren: cevapsitesi
Cevap olarak seçen: canora
13.06.16 19:26
Bunun için routing (yönlendirme) kullanılıyor. Routing yönteminde, yapılan isteklerdeki web site adresinden sonra gelen kısmın (path) yapısına bakarak uygun sayfalara yönlendirme yapılıyor. Örneğin yapılan istek: http://cevapsitesi.com/urunler/kategori/1 ise, bu adresteki /urunler/kategori/1 kısmına bakılıyor. Bu yönlendirmeler Global.asax dosyası içindeki ApplicationStart olayının içinde tanımlanabilir. Global.asax dosyası yoksa Visual Studio'dan oluşturabilirsin. Dosya oluştuğunda zaten Application_Start olayını karşılayan yordamı göreceksin. Tanımlamalar bunun içinde yapılacak. Yönlendirmeler için System.Web.Routing   isim alanı kullanılıyor. Bunu Global.asax dosyanın üstündeki import   bölümünde şöyle bildirmelisin. <%@ import namespace="System.Web.Routing" %> Arkasından Application_Start olayı içinde yönlendirmelerini RouteTable.Routes   statik kolleksiyonununa eklemelisin. RouteCollection sınıfından olan Routes özelliğinin MapPageRoute yöntemiyle yönlendirme ekleniyor. Bunun bir kaç kullanımı var. En temel olanı şöyle: MapPageRoute(Yönlendirme Adı, Yönlendirme Yolu ve parametreler, URL'nin yönlendirileceği gerçek sayfa) Örneğin: void Application_Start(object sender, EventArgs e) { RouteCollection routes = RouteTable.Routes; routes.MapPageRoute("Ürün Görüntüleme", "Urunler/{KategoriAdi}/{*UrunKimligi}", "~/UrunGoruntule.aspx"); routes.MapPageRoute("Sayfalar", "Sayfalar/{SayfaAdi}", "~/Sayfalar.aspx"); } Bu örnekte iki tane yönlendirme yapılıyor. Süslü parantez içinde verilenler parametreler. UrunKimligi parametresinin yanındaki yıldız bu parametrenin kullanılmayabileceğini bildiriyor. Son parametre ise yönlendirmenin yapılacağı asıl sayfa. Belirtilen bir yönlendirme ile eşleşen bir istek yapıldığında ilgili sayfa yükleniyor. Örneğin birinci yönlendirme ile şunlar eşleşebilir. http://example.com/Urunler/Elbise/4 http://example.com/Urunler/123/BirMetin http://example.com/Urunler/Pantolon http://example.com/Urunler/123 Görüldüğü gibi parametrelerin veri tipi yok, biçimi uysun yeter. Bu bilgiler yönlendirilen sayfaya aynı QueryString (adres çubuğundaki sorgu dizesi) gibi string veriler olarak gidecek ve tipleriyle QueryString'de olduğu gibi ilgili sayfada uğraşacaksın. Yönlendirilen sayfa içinden Page_Load yordamında (veya başka yerde de olabilir); Bir parametrenin gelip gelmediğini test etmek için (örneğin UrunKimligi): if (Page.RouteData.Values.ContainsKey("UrunKimligi")) { ... } Bir parametrenin değerini almak için: string stringUrunKimligi = Page.RouteData.Values["UrunKimligi"); Belirli bir yönlendirme ile bu sayfaya gelinip gelinmediğini öğrenmek için (örneğin "Ürün Görüntüleme"): if (Page.RouteData.Route == RouteTable.Routes["Ürün Görüntüleme"]) { ... } ifadelerini kullanabilirsin.
Ekleyen: cevapsitesi

En fazla 3 eski durum gösterilir.