Sem Göksu
Sem Göksu
Yazılım · Yolculuk · Fenerbahçe
Mobil

Kendi WAP Sitemizi Nasıl Yaparız?

Merhaba arkadaşlar, bu makalemizde kendi WAP sitemizi nasıl yapacağımıza bakacağız..

01 Şubat 2008 4 dk okuma 65 0
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öksu
sem.goksu@yazilimgunlugu.com
www.semgoksu.com | www.yazilimgunlugu.com

Kaynaklar

http://www.w3schools.com

http://www.msdn.com

Etiketler: #Windows Phone
Paylaş:

Yorumlar (0)

Henüz yorum yok. İlk yorumu sen yap!

Yorum bırak

* Yorumlar moderasyon sonrası yayınlanır. E-posta gizli tutulur.