Bilgisayarı kurcalarken okuldan kalma notlarım kalmış bir kaçını paylaşım dedim sizlerle sizlere fikir sunma açısından.


1. Urunliste.aspx adlı web sayfası açıldığında sol tarafta ürün kategorileri linkleri (Televizyon, Bulaşık Makinesi, Çamaşır Makinesi) gözükecek, kategorilerden biri tıklandığında markalar (Televizyon Arçelik, Vestel, Bulaşık MakinesiBosch, Ariston) gözükecek. Televizyon kategorisi ve Arçelik markası tıklandığında ARCTV1,ARCTV2 ürünlerin linki gözükecek ve bu ürünlerden herhangi biri tıklandığında ürüne ait kısa açıklama ve ürüne ait resim (Örnek :arctv1.jpg, arctv2.jpg) gözükecek. Bütün linkler tek dosya içerisinde gözükecek. (urunliste.aspx) Web sayfası için gerekli olan C# kodlarını yazınız.


using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class urunliste : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
string dosyaadi = "urunliste.aspx";
if (!IsPostBack)
{
//İlk çalıştırılacaklar
Label1.Text = "Kategoriler";

HyperLink1.Text = "Televizyon";
HyperLink1.NavigateUrl = dosyaadi + "?kategori=" + HyperLink1.Text;

HyperLink2.Text = "Bulaşık Makinesı";
HyperLink2.NavigateUrl = dosyaadi + "?kategori=" + HyperLink2.Text;

HyperLink3.Text = "Çamaşır Makinesı";
HyperLink3.NavigateUrl = dosyaadi + "?kategori=" + HyperLink3.Text;

HyperLink4.Text = ""; //marka için. Örnek: Arçelik
HyperLink5.Text = ""; //marka için. Örnek : Vestel
HyperLink6.Text = ""; //Model için. Örnek : ARCTV1
HyperLink7.Text = "";
Label3.Text = ""; //Ürünün genel özellikleri
Image1.Visible = false; //Ürün resmini gizle
} //isPostback bitişi

//Sorgu stringlerini al
string kategori = Request.QueryString["kategori"];
string marka = Request.QueryString["marka"];
string model = Request.QueryString["model"];
Label2.Text = "Kategori :" + kategori + (marka==null ? "":" Marka :"+ marka);









//Televizyon için seçim listesi
if (kategori == HyperLink1.Text)
{
HyperLink4.Text = "Arçelik";
HyperLink4.NavigateUrl = dosyaadi + "?kategori=" + HyperLink1.Text +
"&marka=" + HyperLink4.Text;

HyperLink5.Text = "Vestel";
HyperLink5.NavigateUrl = dosyaadi + "?kategori=" + HyperLink1.Text +
"&marka=" + HyperLink5.Text;


//Televizyonmarkaları seçilirse
if (kategori==HyperLink1.Text && marka==HyperLink4.Text) //Arçelikseçilirse
{
HyperLink6.Text = "ARCTV1";
HyperLink6.NavigateUrl = dosyaadi + "?kategori=" + HyperLink1.Text +
"&marka=" + HyperLink4.Text + "&model=" + HyperLink6.Text;

HyperLink7.Text = "ARCTV2";
HyperLink7.NavigateUrl = dosyaadi + "?kategori=" + HyperLink1.Text +
"&marka=" + HyperLink4.Text + "&model=" + HyperLink7.Text;
}

//Televizyon modelleri seçilirse
if (kategori == HyperLink1.Text && marka == HyperLink4.Text && model == HyperLink6.Text) //ARCTV1 ürünü seçilirse
{
Label3.Text = "<hr/>" + HyperLink6.Text + "ürününün genelözellikleri<hr/>";
Image1.Visible = true;
Image1.ImageAlign = ImageAlign.Left; //Resmi sola yanaştır
Image1.ImageUrl ="resimler/" + HyperLink6.Text.Trim() + ".jpg";
Image1.AlternateText = HyperLink6.Text + " Televizyonu";
} //if bitişi

if (kategori == HyperLink1.Text && marka == HyperLink4.Text && model == HyperLink7.Text) //ARCTV2 ürünü seçilirse
{
Label3.Text = "<hr/>" + HyperLink7.Text + "ürününün genelözellikleri<hr/>";
Image1.Visible = true;
Image1.ImageAlign = ImageAlign.Left; //Resmi sola yanaştır
Image1.ImageUrl = "resimler/" + HyperLink7.Text.Trim() + ".jpg";
Image1.AlternateText = HyperLink7.Text + " Televizyonu";
}
}

//Bulaşık makinesi için seçim listesi
else if (kategori == HyperLink2.Text)
{
HyperLink4.Text = "Bosch";
HyperLink4.NavigateUrl = dosyaadi + "?kategori=" + HyperLink2.Text +
"&marka=" + HyperLink4.Text;

HyperLink5.Text = "Ariston";
HyperLink5.NavigateUrl = dosyaadi + "?kategori=" + HyperLink2.Text +
"&marka=" + HyperLink5.Text;

}
//if bitişi
}
}



2. Web sayfasının toplam kaç kişi tarafından ziyaret edildiğini resim türünde sayılarla gözükecek şekilde sayfada gösteren web sayfasının C# kodlarını yazınız.



using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.IO;

public partial class sayac : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
int sayacdeg;
string yol = "db/sayac1.txt";

//Dosya okumak için açılıyor
StreamReader dosyaoku = new StreamReader(Server.MapPath(yol));
sayacdeg =Convert.ToInt32( dosyaoku.ReadLine() ); //Dosyadan bir satır okunuyor
dosyaoku.Close(); //Dosya kapatılıyor
//Label1.Text=sayacdeg.ToString();
Label1.Text = "";
string sayacstr=Convert.ToString(sayacdeg);
//Sayaç bilgileri resim dosyalarıyla birleştiriliyor
for (int i = 0; i < sayacstr.Length; i++)
{
Label1.Text +="Şuana kadar websayfasını "+"<img src=\"resimler/" + sayacstr[i] + ".gif\"/>"+" kişi ziyaret etti.";
}
sayacdeg++; //Sayaç değişkeni bir arttırılıyor
//Dosyaya yazmak için nesne oluşturuluyor
//Dosyaya Everyone kullanıcısı için yazma izni verilmelidir.
StreamWriter dosyayaz = new StreamWriter(Server.MapPath("db/sayac1.txt"));
//sayacdeg değişkeni dosyaya yazdırılıyor
dosyayaz.Write(sayacdeg);
dosyayaz.Close(); //Dosya kapatılıyor

}
}


3. Sayfanın üst kısmında Keleşler Oto, Arpaz Ağır San. Ve Ark Oto A.Ş. firmalarının reklamları gösterilme oranları sırasıyla 20, 40, 40 olarak verilmiştir. Linkleri sırayla www.kelesleroto.com, www.arpaz.com.tr, www.arkoto.com.tr . Resim dosyaları, Kelesler.jpg, arpaz.jpg, arkoto.jpg. Bu bilgilere göre reklam banner’ları sayfanın üst kısmında gösterilecektir. Gerekli olan Asp.Net ve C# kodlarını yazınız.



Asp.net Kodları
<%@ Page Language="C#" AutoEventWireup="true" CodeFile="adrotator.aspx.cs" Inherits="adrotator" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Adrotator Reklam Bileşeni</title>
</head>
<body>
<form id="form1" runat="server">
<div>
<asp:AdRotator ID="AdRotator1" AdvertisementFile="reklambilgileri.xml" runat="server" OnAdCreated="AdRotator1_AdCreated" />
<br />
<asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
</div>
</form>
</body>
</html>

C# Kodları
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class adrotator : System.Web.UI.Page
{
protected void AdRotator1_AdCreated(object sender, AdCreatedEventArgs e)
{
Label1.Text = "<a href=\"" + e.NavigateUrl + "\" title=\"Resim Yolu :" + e.ImageUrl+ "\">" + e.AlternateText + "</a>"+ "<br/>" + "Anahtar Sözcük :" + e.AdProperties["Keyword"].ToString();
}
}

ReklamXML Kodları

<Advertisements>
<Ad>
<ImageUrl>resimler/Kelesler.jpg</ImageUrl>
<NavigateUrl>http://www.kelesleroto.com</NavigateUrl>
<AlternateText>Keleşler Oto</AlternateText>
<Impressions>20</Impressions>
<Keyword>Otomobil</Keyword>
</Ad>







<Ad>
<ImageUrl>resimler/arpaz.jpg</ImageUrl>
<NavigateUrl>http://www.arpaz.com.tr</NavigateUrl>
<AlternateText>Arpaz Ağır San.</AlternateText>
<Impressions>40</Impressions>
<Keyword>Sanayi</Keyword>
</Ad>
<Ad>
<ImageUrl>resimler/arkoto.jpg</ImageUrl>
<NavigateUrl>http://www.arkoto.com.tr</NavigateUrl>
<AlternateText>Ark Oto A.Ş.</AlternateText>
<Impressions>40</Impressions>
<Keyword>Otomobil</Keyword>
</Ad>
</Advertisements>