01 Şub 2008 Kendi WAP Sitemizi Nasıl Yaparız? Kategori: Mobil Etiketler: Windows Phone 0 Yorum Merhaba arkadaşlar, bu makalemizde kendi WAP sitemizi nasıl yapacağımıza bakacağız..Ilk 2 makalemiz de WAP' a giris yapmıs ve WAP' da kullanabilecegimiz kontrolleri incelemistik. Bu makalemiz de ise tüm bu bilgileri toparlayıp kendi WAP sitemizi gelistiriyor olacagız. Bunun için gerekli olan Materyaller su sekildedir J Visual Studio, MS Access (Siz isterseniz SQL Server yada MySQL de kullanabilirsiniz), ASP.NET Destekli Bir Hosting. Access de kullanacagımız tablolar asagıdaki gibidir. Kategoriler ve Icerikler isimli 2 tablo olusturuyorum. Içerisini kendimize göre dolduralım J Kategoriler Hakkımda Resimler Haberler Icerikler Hakkımdaki bilgilere buradan ulasabilirisiniz Resimlerimi burada bulabilirsiniz Benden haberleri buradan takip edebilirsiniz Evet bilgilerimizi bu sekilde olusturduk. Simdi asıl konumuza dönelim ve wap sayfamızı olusturalım. Yeni Bir Web projesi olusturalım ve projemize Default.aspx ve Icerik.aspx isimli 2 adet mobil form ekleyelim. Default.aspx de Kategorilerimiz listelenecek. Icerik.aspx de ise o kategoride yer alan haberler listelenecek. Default.aspx <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default" %> <%@ Register TagPrefix="mobile" Namespace="System.Web.UI.MobileControls" Assembly="System.Web.Mobile" %> <html xmlns="http://www.w3.org/1999/xhtml"> <body> <mobile:Form ID="Form1" Runat="server" Title="Sem GÖKSU - WAP"> <mobile:Image ID="Image1" Runat="server" ImageUrl="csharp.gif" NavigateUrl="default.aspx"> </mobile:Image> <br /> <mobile:Panel ID="Panel1" Runat="server"> </mobile:Panel> <mobile:Label ID="Label1" Runat="server"> </mobile:Label> <mobile:Image ID="Image2" Runat="server" ImageUrl="google.gif" NavigateUrl="http://wap.google.com"> </mobile:Image> </mobile:Form> </body> </html> Default.aspx.cs protected void Page_Load(object sender, EventArgs e) { try { OleDbConnection Conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source="+Server.MapPath("wapsite.mdb")); OleDbDataAdapter Da = new OleDbDataAdapter("Select * from Kategoriler", Conn); DataSet Ds = new DataSet(); Da.Fill(Ds, "tbl"); for (int i = 0; i < Ds.Tables[0].Rows.Count; i++) { Link myLink= new Link(); // myLink isimli yeni Bir Link Türetiyoruz. myLink.Text = Ds.Tables[0].Rows[i]["KategoriAdi"].ToString(); //Text Özelliginde Kategori Adı Yazacak.. myLink.NavigateUrl = "Icerik.aspx?KategoriID=" + Ds.Tables[0].Rows[i]["KategoriID"].ToString() + "&KategoriAdi=" + Ds.Tables[0].Rows[i]["KategoriAdi"].ToString(); // Gidecegi sayfayı belirtiyoruz... Panel1.Controls.Add(myLink); // Olusturdugumuz Linki panel içerisine ekliyoruz. } } catch (Exception) { // Response.Write("Baglanamıyorum :("); // Bu sekilde kullanamıyoruz Label1.Text = "Sistem de hata meydana geldi, Lütfen daha sonra tekrar deneyiniz :("; } } Ana sayfamızın son hali yukarıdaki gibidir. Simdi içerikleri görüntüleyecegimiz sayfaya geçelim. Icerik.aspx <%@ Page Language="C#" AutoEventWireup="true" CodeFile="Icerik.aspx.cs" Inherits="Icerik" %> <%@ Register TagPrefix="mobile" Namespace="System.Web.UI.MobileControls" Assembly="System.Web.Mobile" %> <html xmlns="http://www.w3.org/1999/xhtml"> <body> <mobile:Form ID="Form1" Runat="server"> <mobile:Image ID="Image1" Runat="server" ImageUrl="csharp.gif" NavigateUrl="default.aspx"> </mobile:Image> <br /> <mobile:TextView ID="TextView1" Runat="server"> </mobile:TextView> <mobile:Link ID="Link1" Runat="server" NavigateUrl="default.aspx">Ana Sayfa</mobile:Link> <br /> <mobile:Image ID="Image2" Runat="server" ImageUrl="google.gif" NavigateUrl="http://wap.google.com"> </mobile:Image> <mobile:Label ID="Label1" Runat="server"> </mobile:Label> </mobile:Form> </body> </html> Icerik.aspx.cs protected void Page_Load(object sender, EventArgs e) { if (Request.QueryString["KategoriID"] != null && Request.QueryString["KategoriAdi"] != null) { try { OleDbConnection Conn = new OleDbConnection("Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + Server.MapPath("wapsite.mdb")); OleDbDataAdapter Da = new OleDbDataAdapter("Select * from Icerikler where KategoriID = " + Request.QueryString["KategoriID"], Conn); DataSet Ds = new DataSet(); Da.Fill(Ds, "tbl"); string Content = ""; Content ="<b>" +Request.QueryString["KategoriAdi"].ToString() + "</b><br/>"; Form1.Title = Request.QueryString["KategoriAdi"].ToString(); for (int i = 0; i < Ds.Tables[0].Rows.Count; i++) { Content += Ds.Tables[0].Rows[i]["Icerik"].ToString(); } TextView1.Text = Content; } catch (Exception) { // Response.Write("Baglanamıyorum :("); // Bu sekilde kullanamıyoruz Label1.Text = "Sistem de hata meydana geldi, Lütfen daha sonra tekrar deneyiniz :("; } } else { RedirectToMobilePage("default.aspx"); // Mobile Formlarda yönlendirme bu sekilde oluyor. } } Içerik sayfamızda sekildeki gibi, geriye kalan tek sey Emulatorden yada cep telefonumuzdan ilk wap sitemizi test etmek. Iste Sonuç :) Bu makalenin de sonuna geldik. Bir sonraki makale de görüsmek üzere. Iyi çalısmalar dilerim Makale ile ilgili dökümanı indirmek için tıklayınız Sem Göksusem.goksu@yazilimgunlugu.com www.semgoksu.com | www.yazilimgunlugu.com Kaynaklar http://www.w3schools.com http://www.msdn.com Yorum (0) Bu yazıya henüz yorum yapılmamış... Yorum Yaz * Ad Soyad: * Email: * Message: