<?xml version="1.0" encoding="utf-8"?>
<rss xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:pingback="http://madskills.com/public/xml/rss/module/pingback/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:dc="http://purl.org/dc/elements/1.1/" version="2.0">
  <channel>
    <title>Engin Terzi</title>
    <link>http://www.enginterzi.com.tr/</link>
    <description>C# , ASP.NET, MS SQL Server &amp; Windows Applications  Üzerine Herşey Püf Noktaları &lt;br&gt; Takip Ettiğim Teknoloji Haberleri</description>
    <language>en-us</language>
    <copyright>Engin Terzi</copyright>
    <lastBuildDate>Fri, 28 Mar 2008 14:08:48 GMT</lastBuildDate>
    <generator>newtelligence dasBlog 2.0.7226.0</generator>
    <managingEditor>me@enginterzi.com.tr</managingEditor>
    <webMaster>me@enginterzi.com.tr</webMaster>
    <item>
      <trackback:ping>http://www.enginterzi.com.tr/Trackback.aspx?guid=d0457a9e-1f62-4dcd-ad21-01f1eec8939f</trackback:ping>
      <pingback:server>http://www.enginterzi.com.tr/pingback.aspx</pingback:server>
      <pingback:target>http://www.enginterzi.com.tr/PermaLink,guid,d0457a9e-1f62-4dcd-ad21-01f1eec8939f.aspx</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">Dataset nesneleri aslında ADO(ActiveX Data
Objects) ile gelen recordset kavramına çok benzemekte ve bunlara paralellik göstermektedir.
Ancak recordset kavramı tam olarak ADO.Net ile gelen Dataset nesnelerini karşılamamaktadır.
Dataset objeleri bu recordsetlerin bayağı genişletilmiş bir versiyonu olarak karşımıza
çıkmaktadır. Datasetler genel olarak veritabanı ile bağlantısı kesilmiş verileri tutmakta
kullanılır. Daha önceki yazılarımızdan kalma geleneği devam ettirerek adım adım anlatacağım.
Anlatacağım adımlar :<br /><br /><br /><br />
I.              DataSet
nesnesi yaratılması<br /><br />
II.             Kayıt
Ekleme<br /><br />
III.            “Dirty” Data
Yakalama<br /><br />
IV.            Değişiklikleri
Kabul Etme<br /><br />
V.             Veri Bileşenlerini
Bağlama<br /><br />
VI.            Veri Saklama(Persisting
Data)<br /><br /><br /><br /><b><font color="#a52a2a">I. DataSet Nesnesi Yaratma</font></b><br /><br /><br /><br />
DataSet nesnesinin bir örneği yaratılacağı zaman DataSet constructor’ı kullanılır.
Yeni bir DataSet nesnesi yaratırken isterseniz parametresiz çağırarak taban constructor’ını
kullanabilirsiniz veya kendiniz bu metodu overload edebilirsiniz bu durumda ise constructor’e
DataSet nesnesinin  adını parametre olarak gönderirsiniz. Aşağıda bu iki durumun
kullanmı gösterilmiştir.<br /><br /><br /><br />
DataSet dataSet = new DataSet();    è Taban constructor’ı kullanılmış<br /><br />
DataSet dataSet = new DataSet("ornekDataSet");  è overload edilmiş<br /><br /><br /><br />
DataSet nesnesinin içini doldurnayı .Net data providerları bir arabirim işlevi görerek
yapar. DataSet nesnesi veriyi tutar, veri üzerinde update(güncelleme), delete(silme),
add(ekleme) işlevlerinin yapılmasına da izin verir. Ancak bu DataSet nesnesinin o
sırada veritabanı ile bağlantısı olmadığı için Update metodu çağrıldığı zaman veri
üzerinde yapılan değişiklikler DataAdapter nesnesi aracılığı ile veritabanına gönderilirler.<br /><br /><br /><br />
DataSet nesnesinin içerisindeki veriler tablolar halinde organize olmuştur. Bu tablolar
DataTable nesnesi tarafından üretilir. Bu tabloları kullanırken DataSet nesnesi birbirileri
ile alakalı yada alakasız bir çok veri kümesi tutar. Her DataTable nesnesi ise içerdiği
DataRow ve DataColumn nesneleri ile verileri tutar.<br /><br /><br /><br />
DataSet’i verilerle doldurduktan sonra istediğiniz veriyi döndürmek için verileri
parse etmek gerekir. Bu ise dataset içerisinde satır ve sütunlar arasında bir döngü
kurularak yapılabilir. Bunun için basit bir döngü kodu aşağıda belirtilmiştir.<br /><br /><br /><br />
foreach(DataRow row in dataSet.Tables[0].Rows)<br /><br />
{<br /><br />
foreach(DataColumn col in row.Table.Columns)<br /><br />
  this.textBox1.Text = this.textBox1.Text + row[col].ToString() + "\t";<br /><br />
this.textBox1.Text = this.textBox1.Text + "\n";<br /><br />
}<br /><br /><br /><br />
Eğer veriyi parse ederken veri üzerinde bir değişiklik yapmak isteyebilirsiniz bu
durumda datasetin DataRow(satır) ve DataColomn’ına(sütun) erişmeniz gerekir. Bunun
için ise basit bir kod aşağıda belirtilmiştir.<br /><br /><br /><br />
foreach(DataRow row in dataSet.Tables[0].Rows)<br /><br />
row[1] = "YeniDeger";<br /><br /><br /><br /><b><font color="#a52a2a">II. Kayıt Ekleme</font></b><br /><br /><br /><br />
Yeni bir DataRow nesnesi yaratarak DataSet’e yeni kayıt eklemesi yapılır. Bu ise DataTable
nesnesinin NewRow metodu kullanılarak gerçekleştirilir. Bu metod ile boş bir row(sıra)
yaratılır. Kayıt ekleme için basit bir örnek kod aşağıda belirtilmiştir.<br /><br /><br /><br />
DataRow row = dataSet.Tables[0].NewRow();<br /><br />
row["tanitici_no"] = "11-03-1981";<br /><br />
row["soyad"] = "soyad";<br /><br />
row["ilkad"] = "ilkad";<br /><br />
dataSet.Tables[0].Rows.Add(row);<br /><br /><br /><br /><b><font color="#a52a2a">III. “Dirty” Data Yakalama</font></b><br /><br /><br /><br />
Türkçeye direkt olarak çevirdiğimiz zaman kirli veri gibi bir anlama geldiği için
bu terimin ingilizcesini kullanacağım. Bazen veriler üzerinde değişiklik yaparız ancak
bu değişklikler henüz DataSet tarafından kabul edilmemiştir. İşte bu gibi durumlarda
bu tip verilere verilen isim Dirty Data’dır. Şimdi ise bu Dirty Data’nın yakalanma
işlemine sıra geldi. Bu tip verileri yakalamak için DataSet içerisinde HasChanges()
metodu mevcuttur. Bu metod sonunda eğer true dönerse DataSet’in üzerinde değişiklik
yapılan(ancak bu değişiklikler henüz DataSet tarafından kabul edilmemiştir.) verilere
sahip olduğu anlamına gelir. Dirty Data yakalamaya örnek basit bir metodun kod parçası
aşağıda gösterilmiştir.<br /><br /><br /><br />
private void DirtyDataYakala (DataSet dataSet)<br /><br />
{<br /><br />
      if(dataSet.HasChanges())//Eğer değişklik yapıldıysa
buraya girer<br /><br />
      {    <br /><br />
//Sadece değişiklikleri getir<br /><br />
            DataSet dirtyDataSet
= dataSet.GetChanges();<br /><br />
      }<br /><br />
}<br /><br /><br /><br /><br /><br /><b><font color="#a52a2a">IV. Değişiklikleri Kabul Etme</font></b><br /><br /><br /><br />
DataSet üzerinde herhangi bir veri üzerinde değişklik yapıldığı zaman veride değişiklik
yapıldığına dair işaretlenir. Eğer veri üzerinde yapılan değişkliğin doğruluğu onaylanırsa
veri üzerinde yapılan değişiklikler kabul edilmek üzere DataSet nesnesinin AcceptChanges()
metodu çağrılır. Ayrıca tüm DataSet’ler üzerinde yapılan değişiklikleri kabul etmek
istemiyorsanız DataRow yada DataTable’ın AcceptChanges() metodunu kullanabilirsiniz.
Bu sayede veriler üzerinde tam bir yönetim söz konusu olabilir.<br /><br /><br /><br />
Yalnız DataSet üzerinde yaptığınız değişiklikler veritabanını değiştirmez.(Eğer DataSet’inizin
veritabanı bağlantısı kesilmişse ki performans açısından bağlantının kesilmiş olması
daha yararlıdır.). Bu yüzden DataAdapter nesnesinin Update() metodunu kullanarak veritabanına
sadece değişiklik yapılan kısımların gönderilmesi sağlanır. (Dikkat tüm veriler gitmiyor
sadece değişiklikler gidiyor.)<br /><br /><br /><br /><b><font color="#a52a2a">V. Veri Bileşenlerini Bağlamak</font></b><br /><br /><br /><br />
Yeni .Net bileşenleri(component) sayesinde verileri bağlamak hem Windows Formlarında
hem de Web Formlarında oldukça basitleşti. DataSetleri Windows veya Web Formlarına
bağlayarak DataSetin içindeki bütün verileri görmek mümkün.<br /><br /><br /><br />
Bu bileşenlerden bir tanesi olan DataGrid’ler çoklu DataTable nesnesini içlerinde
barındırırlar. Bu DataTable’lerin her biri de çoklu data row nesneleri içerirler.
DataGrid’in DataSource özelliğine sadece DataSet nesnesini bağlamamız DataSet’lere
erişmemiz için yeterli olur. Tabii bir de DataSet içerisinden hangi DataTable nesnesinin
gösterileceğini belirtmemiz gerekir. Aksi halde DataGrid üzerinde DataSet’in sahip
olduğu bütün DataRow’lar gösterilir. Bu işlemi ise DataGrid’in DataMember özelliğini
kullanarak yapabiliriz. Şimdi bu işlemleri gösteren basit bir kod parçasına bakalım.<br /><br /><br /><br />
//Yalnız bu işlemi yaparken<br /><br />
//DataGrid'in daha önceden tanımlanmış olması gerekir<br /><br />
ornekDataGrid.DataSource = dataSet;<br /><br />
ornekDataGrid.DataMember = "Insan";<br /><br /><br /><br />
DataGrid nesnesini Toolbox içerisinden formunuza sürükleyip bırakarak yaratabilirsiniz.
Yada eğer Windows Application yapıyorsanız System.Windows.Forms.DataGrid isim uzayı
altından manuel olarak da yaratabilirsiniz. Eğer Web Appplication yazıyorsanız System.Web.UI.WebControls.DataGrid
isim uzayı altından yaratabilirsiniz.<br /><br /><br /><br />
Diğer kontollerde örneğin metin kutularında(TextBox)’larda ise Windows Application’da
System.Windows.Forms.Controls.Binding sınıfını kullanarak DataSet’leri bağlayabilirsiniz.
Eğer Web Application yazıyorsanız bu sefer System.Web.UI.DataBinding sınıfını kullanabilirsiniz.
Şimdi bunlara ilişkin küçük bir kod parçasına bakalım.<br /><br /><br /><br />
Windows Application için ;<br /><br /><br /><br />
textBox1.DataBindings.Add(new System.Windows.Forms.Binding("Text", dataSet, "tanitici_no"));<br /><br /><br /><br />
Web Application için ;<br /><br /><br /><br />
Burada biraz daha değişik Web Application’larda Run Time(çalışma) sırasında veriler
bağlanır bu yüzden bu kontrollere veri bağlayacağınız zaman bu işlemi seçtiğiniz kontrolün(TextBox,
Label vs…Wink Properties(özellik) penceresinden DataBaindings özelliğini tıklayıp
custom binding expression radio button’unun seçip ordaki alanın içine new System.Web.UI.DataBinding("Text",
dataSet, "tanitici_no")  şeklinde bağlamak istediğiniz verinin expression’ını
yazmanız yeterli olacaktır.<br /><br /><br /><br />
Şimdi parantez içinde yazannların neler olduğuna bakalım:<br /><br />
“Text” : Bu kontrolün hangi özelliğine veri bağlayacağımızı belirtir. “Text” diye
belirterek metin kutusuna Text özelliğine veri bağlayacağımızı belirtiyoruz. 
(Property name)<br /><br /><br /><br />
dataSet : Veri kaynağı nesnesini belirtiyoruz. (data source)<br /><br /><br /><br />
“tanitici_ no”  : Bu ise bağlanan verinin hangi üyesinin bağlandığını belirtir.
(data member)<br /><br /><br /><br /><b><font color="#a52a2a">VI. Veri Saklama(Persisting Data)</font></b><br /><br /><br /><br />
DataSetler üzerinde çalışırken, DataSet’teki verileri bilgisayarınızdaki XML dosyalarına
kaydedebilirsiniz. Örneğin seyahate çıktınız. Ancak şirket bilgisayarındaki veritabanı
bilgilerine ihtiyacınız var. Bu veritabanını öncelikle DataSet’e bağlayıp bütün verileri
XML dosyasına kaydettiğiniz zaman seyahatte iken bu XML dosyasını kullanarak bütün
verilere ulaşabilirsiniz. Ve bu dosyadaki verileri kullanarak işinizi yapabilirsiniz
daha sonra bu dosya üzerinde yaptığınız değişiklikleri seyahat dönüşü şirket bilgisayarınıza
aktarabilirsiniz. Aşağıda bu işlemle ilgili örnek bir kod parçası belirtilmiştir.<br /><br /><br /><br />
DataSet üzerindeki veriyi XML dosyasına kaydetme :<br /><br /><br /><br />
dataSet.WriteXml(“C:\\Veri.xml”Wink;<br /><br /><br /><br />
XML dosyasındaki verileri DataSet’e aktarma :<br /><br /><br /><br />
dataSet.ReadXml(“C:\\Veri.xml”Wink;<br /><br /><br /><br />
Evet teorik olaraka DataSet nesneleri ile anlatacaklarım bu kadar. Ancak yukarıda
anlattıklarım ile ilgili olarak basit bir Windows C#.Net uygulamasını da buraya koyuyorum.
Programı indirmek için DataSets tıklayın. Uygulama yine SQL Server ile birlikte gelen
Northwind veritabanını ve bununla birlikte gelen Ten Most Products adlı Stored Procedure’ı
kullanmakta.<p></p><img width="0" height="0" src="http://www.enginterzi.com.tr/aggbug.ashx?id=d0457a9e-1f62-4dcd-ad21-01f1eec8939f" /></body>
      <title>Dataset Kavramı nedir? Nasıl Yaratılır ve Nasıl Kullanılır?</title>
      <guid isPermaLink="false">http://www.enginterzi.com.tr/PermaLink,guid,d0457a9e-1f62-4dcd-ad21-01f1eec8939f.aspx</guid>
      <link>http://www.enginterzi.com.tr/Dataset+Kavram%c4%b1+Nedir+Nas%c4%b1l+Yarat%c4%b1l%c4%b1r+Ve+Nas%c4%b1l+Kullan%c4%b1l%c4%b1r.aspx</link>
      <pubDate>Fri, 28 Mar 2008 14:08:48 GMT</pubDate>
      <description>Dataset nesneleri aslında ADO(ActiveX Data Objects) ile gelen recordset kavramına çok benzemekte ve bunlara paralellik göstermektedir. Ancak recordset kavramı tam olarak ADO.Net ile gelen Dataset nesnelerini karşılamamaktadır. Dataset objeleri bu recordsetlerin bayağı genişletilmiş bir versiyonu olarak karşımıza çıkmaktadır. Datasetler genel olarak veritabanı ile bağlantısı kesilmiş verileri tutmakta kullanılır. Daha önceki yazılarımızdan kalma geleneği devam ettirerek adım adım anlatacağım. Anlatacağım adımlar :&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
I.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DataSet
nesnesi yaratılması&lt;br&gt;
&lt;br&gt;
II.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Kayıt
Ekleme&lt;br&gt;
&lt;br&gt;
III.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; “Dirty” Data
Yakalama&lt;br&gt;
&lt;br&gt;
IV.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Değişiklikleri
Kabul Etme&lt;br&gt;
&lt;br&gt;
V.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Veri Bileşenlerini
Bağlama&lt;br&gt;
&lt;br&gt;
VI.&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Veri Saklama(Persisting
Data)&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;b&gt;&lt;font color="#a52a2a"&gt;I. DataSet Nesnesi Yaratma&lt;/font&gt;&lt;/b&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
DataSet nesnesinin bir örneği yaratılacağı zaman DataSet constructor’ı kullanılır.
Yeni bir DataSet nesnesi yaratırken isterseniz parametresiz çağırarak taban constructor’ını
kullanabilirsiniz veya kendiniz bu metodu overload edebilirsiniz bu durumda ise constructor’e
DataSet nesnesinin&amp;nbsp; adını parametre olarak gönderirsiniz. Aşağıda bu iki durumun
kullanmı gösterilmiştir.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
DataSet dataSet = new DataSet();&amp;nbsp;&amp;nbsp;&amp;nbsp; è Taban constructor’ı kullanılmış&lt;br&gt;
&lt;br&gt;
DataSet dataSet = new DataSet("ornekDataSet");&amp;nbsp; è overload edilmiş&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
DataSet nesnesinin içini doldurnayı .Net data providerları bir arabirim işlevi görerek
yapar. DataSet nesnesi veriyi tutar, veri üzerinde update(güncelleme), delete(silme),
add(ekleme) işlevlerinin yapılmasına da izin verir. Ancak bu DataSet nesnesinin o
sırada veritabanı ile bağlantısı olmadığı için Update metodu çağrıldığı zaman veri
üzerinde yapılan değişiklikler DataAdapter nesnesi aracılığı ile veritabanına gönderilirler.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
DataSet nesnesinin içerisindeki veriler tablolar halinde organize olmuştur. Bu tablolar
DataTable nesnesi tarafından üretilir. Bu tabloları kullanırken DataSet nesnesi birbirileri
ile alakalı yada alakasız bir çok veri kümesi tutar. Her DataTable nesnesi ise içerdiği
DataRow ve DataColumn nesneleri ile verileri tutar.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
DataSet’i verilerle doldurduktan sonra istediğiniz veriyi döndürmek için verileri
parse etmek gerekir. Bu ise dataset içerisinde satır ve sütunlar arasında bir döngü
kurularak yapılabilir. Bunun için basit bir döngü kodu aşağıda belirtilmiştir.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
foreach(DataRow row in dataSet.Tables[0].Rows)&lt;br&gt;
&lt;br&gt;
{&lt;br&gt;
&lt;br&gt;
foreach(DataColumn col in row.Table.Columns)&lt;br&gt;
&lt;br&gt;
&amp;nbsp; this.textBox1.Text = this.textBox1.Text + row[col].ToString() + "\t";&lt;br&gt;
&lt;br&gt;
this.textBox1.Text = this.textBox1.Text + "\n";&lt;br&gt;
&lt;br&gt;
}&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
Eğer veriyi parse ederken veri üzerinde bir değişiklik yapmak isteyebilirsiniz bu
durumda datasetin DataRow(satır) ve DataColomn’ına(sütun) erişmeniz gerekir. Bunun
için ise basit bir kod aşağıda belirtilmiştir.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
foreach(DataRow row in dataSet.Tables[0].Rows)&lt;br&gt;
&lt;br&gt;
row[1] = "YeniDeger";&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;b&gt;&lt;font color="#a52a2a"&gt;II. Kayıt Ekleme&lt;/font&gt;&lt;/b&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
Yeni bir DataRow nesnesi yaratarak DataSet’e yeni kayıt eklemesi yapılır. Bu ise DataTable
nesnesinin NewRow metodu kullanılarak gerçekleştirilir. Bu metod ile boş bir row(sıra)
yaratılır. Kayıt ekleme için basit bir örnek kod aşağıda belirtilmiştir.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
DataRow row = dataSet.Tables[0].NewRow();&lt;br&gt;
&lt;br&gt;
row["tanitici_no"] = "11-03-1981";&lt;br&gt;
&lt;br&gt;
row["soyad"] = "soyad";&lt;br&gt;
&lt;br&gt;
row["ilkad"] = "ilkad";&lt;br&gt;
&lt;br&gt;
dataSet.Tables[0].Rows.Add(row);&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;b&gt;&lt;font color="#a52a2a"&gt;III. “Dirty” Data Yakalama&lt;/font&gt;&lt;/b&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
Türkçeye direkt olarak çevirdiğimiz zaman kirli veri gibi bir anlama geldiği için
bu terimin ingilizcesini kullanacağım. Bazen veriler üzerinde değişiklik yaparız ancak
bu değişklikler henüz DataSet tarafından kabul edilmemiştir. İşte bu gibi durumlarda
bu tip verilere verilen isim Dirty Data’dır. Şimdi ise bu Dirty Data’nın yakalanma
işlemine sıra geldi. Bu tip verileri yakalamak için DataSet içerisinde HasChanges()
metodu mevcuttur. Bu metod sonunda eğer true dönerse DataSet’in üzerinde değişiklik
yapılan(ancak bu değişiklikler henüz DataSet tarafından kabul edilmemiştir.) verilere
sahip olduğu anlamına gelir. Dirty Data yakalamaya örnek basit bir metodun kod parçası
aşağıda gösterilmiştir.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
private void DirtyDataYakala (DataSet dataSet)&lt;br&gt;
&lt;br&gt;
{&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; if(dataSet.HasChanges())//Eğer değişklik yapıldıysa
buraya girer&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&amp;nbsp;&amp;nbsp; &amp;nbsp;&lt;br&gt;
&lt;br&gt;
//Sadece değişiklikleri getir&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; DataSet dirtyDataSet
= dataSet.GetChanges();&lt;br&gt;
&lt;br&gt;
&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br&gt;
&lt;br&gt;
}&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;b&gt;&lt;font color="#a52a2a"&gt;IV. Değişiklikleri Kabul Etme&lt;/font&gt;&lt;/b&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
DataSet üzerinde herhangi bir veri üzerinde değişklik yapıldığı zaman veride değişiklik
yapıldığına dair işaretlenir. Eğer veri üzerinde yapılan değişkliğin doğruluğu onaylanırsa
veri üzerinde yapılan değişiklikler kabul edilmek üzere DataSet nesnesinin AcceptChanges()
metodu çağrılır. Ayrıca tüm DataSet’ler üzerinde yapılan değişiklikleri kabul etmek
istemiyorsanız DataRow yada DataTable’ın AcceptChanges() metodunu kullanabilirsiniz.
Bu sayede veriler üzerinde tam bir yönetim söz konusu olabilir.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
Yalnız DataSet üzerinde yaptığınız değişiklikler veritabanını değiştirmez.(Eğer DataSet’inizin
veritabanı bağlantısı kesilmişse ki performans açısından bağlantının kesilmiş olması
daha yararlıdır.). Bu yüzden DataAdapter nesnesinin Update() metodunu kullanarak veritabanına
sadece değişiklik yapılan kısımların gönderilmesi sağlanır. (Dikkat tüm veriler gitmiyor
sadece değişiklikler gidiyor.)&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;b&gt;&lt;font color="#a52a2a"&gt;V. Veri Bileşenlerini Bağlamak&lt;/font&gt;&lt;/b&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
Yeni .Net bileşenleri(component) sayesinde verileri bağlamak hem Windows Formlarında
hem de Web Formlarında oldukça basitleşti. DataSetleri Windows veya Web Formlarına
bağlayarak DataSetin içindeki bütün verileri görmek mümkün.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
Bu bileşenlerden bir tanesi olan DataGrid’ler çoklu DataTable nesnesini içlerinde
barındırırlar. Bu DataTable’lerin her biri de çoklu data row nesneleri içerirler.
DataGrid’in DataSource özelliğine sadece DataSet nesnesini bağlamamız DataSet’lere
erişmemiz için yeterli olur. Tabii bir de DataSet içerisinden hangi DataTable nesnesinin
gösterileceğini belirtmemiz gerekir. Aksi halde DataGrid üzerinde DataSet’in sahip
olduğu bütün DataRow’lar gösterilir. Bu işlemi ise DataGrid’in DataMember özelliğini
kullanarak yapabiliriz. Şimdi bu işlemleri gösteren basit bir kod parçasına bakalım.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
//Yalnız bu işlemi yaparken&lt;br&gt;
&lt;br&gt;
//DataGrid'in daha önceden tanımlanmış olması gerekir&lt;br&gt;
&lt;br&gt;
ornekDataGrid.DataSource = dataSet;&lt;br&gt;
&lt;br&gt;
ornekDataGrid.DataMember = "Insan";&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
DataGrid nesnesini Toolbox içerisinden formunuza sürükleyip bırakarak yaratabilirsiniz.
Yada eğer Windows Application yapıyorsanız System.Windows.Forms.DataGrid isim uzayı
altından manuel olarak da yaratabilirsiniz. Eğer Web Appplication yazıyorsanız System.Web.UI.WebControls.DataGrid
isim uzayı altından yaratabilirsiniz.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
Diğer kontollerde örneğin metin kutularında(TextBox)’larda ise Windows Application’da
System.Windows.Forms.Controls.Binding sınıfını kullanarak DataSet’leri bağlayabilirsiniz.
Eğer Web Application yazıyorsanız bu sefer System.Web.UI.DataBinding sınıfını kullanabilirsiniz.
Şimdi bunlara ilişkin küçük bir kod parçasına bakalım.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
Windows Application için ;&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
textBox1.DataBindings.Add(new System.Windows.Forms.Binding("Text", dataSet, "tanitici_no"));&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
Web Application için ;&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
Burada biraz daha değişik Web Application’larda Run Time(çalışma) sırasında veriler
bağlanır bu yüzden bu kontrollere veri bağlayacağınız zaman bu işlemi seçtiğiniz kontrolün(TextBox,
Label vs…Wink Properties(özellik) penceresinden DataBaindings özelliğini tıklayıp
custom binding expression radio button’unun seçip ordaki alanın içine new System.Web.UI.DataBinding("Text",
dataSet, "tanitici_no")&amp;nbsp; şeklinde bağlamak istediğiniz verinin expression’ını
yazmanız yeterli olacaktır.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
Şimdi parantez içinde yazannların neler olduğuna bakalım:&lt;br&gt;
&lt;br&gt;
“Text” : Bu kontrolün hangi özelliğine veri bağlayacağımızı belirtir. “Text” diye
belirterek metin kutusuna Text özelliğine veri bağlayacağımızı belirtiyoruz.&amp;nbsp;
(Property name)&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
dataSet : Veri kaynağı nesnesini belirtiyoruz. (data source)&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
“tanitici_ no”&amp;nbsp; : Bu ise bağlanan verinin hangi üyesinin bağlandığını belirtir.
(data member)&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;b&gt;&lt;font color="#a52a2a"&gt;VI. Veri Saklama(Persisting Data)&lt;/font&gt;&lt;/b&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
DataSetler üzerinde çalışırken, DataSet’teki verileri bilgisayarınızdaki XML dosyalarına
kaydedebilirsiniz. Örneğin seyahate çıktınız. Ancak şirket bilgisayarındaki veritabanı
bilgilerine ihtiyacınız var. Bu veritabanını öncelikle DataSet’e bağlayıp bütün verileri
XML dosyasına kaydettiğiniz zaman seyahatte iken bu XML dosyasını kullanarak bütün
verilere ulaşabilirsiniz. Ve bu dosyadaki verileri kullanarak işinizi yapabilirsiniz
daha sonra bu dosya üzerinde yaptığınız değişiklikleri seyahat dönüşü şirket bilgisayarınıza
aktarabilirsiniz. Aşağıda bu işlemle ilgili örnek bir kod parçası belirtilmiştir.&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
DataSet üzerindeki veriyi XML dosyasına kaydetme :&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
dataSet.WriteXml(“C:\\Veri.xml”Wink;&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
XML dosyasındaki verileri DataSet’e aktarma :&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
dataSet.ReadXml(“C:\\Veri.xml”Wink;&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
Evet teorik olaraka DataSet nesneleri ile anlatacaklarım bu kadar. Ancak yukarıda
anlattıklarım ile ilgili olarak basit bir Windows C#.Net uygulamasını da buraya koyuyorum.
Programı indirmek için DataSets tıklayın. Uygulama yine SQL Server ile birlikte gelen
Northwind veritabanını ve bununla birlikte gelen Ten Most Products adlı Stored Procedure’ı
kullanmakta.&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.enginterzi.com.tr/aggbug.ashx?id=d0457a9e-1f62-4dcd-ad21-01f1eec8939f" /&gt;</description>
      <category>ASP.NET</category>
    </item>
    <item>
      <trackback:ping>http://www.enginterzi.com.tr/Trackback.aspx?guid=1afc3644-6f8f-4e0e-93d7-4a03ced41b62</trackback:ping>
      <pingback:server>http://www.enginterzi.com.tr/pingback.aspx</pingback:server>
      <pingback:target>http://www.enginterzi.com.tr/PermaLink,guid,1afc3644-6f8f-4e0e-93d7-4a03ced41b62.aspx</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">Türkler'le Başa Çıkılmaz<br /><br />
Bana herhangi bir ülke gösterin ki, bizim sabredebildiklerimize katlanabilsin. Hiç
sanmıyorum. Elektrik kesik, ses eden yok! Sular akmaz, aynı sabır! Her iktidara gelen
zaman ister, eskisini aratır hale gelir, tık yok! Ama bütün bunlara rağmen en ufak
şeylere sevinir, mutlu olur, her şeyi unuturuz. Gösterişi sevmediğimiz gibi, başardıklarımızın
da farkında olmayız.<br /><br />
Aşağıdaki örnek gibi; 
<br /><br />
Bir reklam ajansımız, 50 000 adetlik baskılı T-Shirt ihracat bağlantısı yapmıştı.
Sıcak baskı tekniği ile yapılan bu uygulama, herhangi bir fotoğrafın T-Shirt'e basılması
şeklinde oluyordu. İlk 10 000 adetlik parti yerine ulaştığında, alıcı firma işin mükemmelliği
karşısında gözlerine inanamamış, uygulamayı yerinde inceleyip bilgi sahibi olmak için
bu konuda uzman iki kişilik heyeti Türkiye'ye yollamış. Olay buraya kadar göğüs kabartıcı.
Ancak, reklam şirketini almış bir panik. O kadar iptidai bir yöntem uyguluyorlar ki,
bunun ilgili firma tarafından anlaşılıp siparişin iptal edileceği korkusunu yaşıyorlar.
Derken heyet geliyor. Karşılıklı sevgi gösterileri, iltifatlar, izzet-i ikram; heyet
sabırsız, illaki imalatı göreceğiz diye sızlanıyorlar.<br /><br />
Bizimkiler hala panikte; yapacak başka bir şey kalmıyor, utana sıkıla atölyenin yolunu
tutuyorlar. Sanayi sitesinin loş bir katındaki atölyeye girdiklerinde manzara şöyle;
bir kırık dökük masa, yerlerde boyalar, yırtık elbiseli birkaç çırak, iki usta ve
onbeş metrelik uzun bir tezgah ve tabii ki meşhur T-Shirt'ler baskı için sıra bekliyorlar.
Bu ortamda beyaz T-Shirt'lere bu kadar temiz baskı yapmak olanaksız. Ama heyet nezaketen
uygulamanın başlamasını istiyor. Kaybedecek hiçbir şeyi kalmayan firma yetkilileri,
çaresiz gösteriye başlıyorlar. İki çırak, masaya paralel tahtanın iki ucundan tutuyorlar.
Bu arada usta gerekli boya ayarını yapıyor ve: Şimdi!, diye bağırıyor. İki çırak var
güçleri ile öteki uca koşuyorlar. Sonuç: Harika....<br /><br />
Ertesi gün heyet teşekkür ederek ayrılıyor. Korku ile beklenen birkaç gün sonra karşı
firmadan 50 000 adetlik bir sipariş daha geliyor. Bizimkiler, kabul edilmenin sarhoşluğu
içinde bayram yapıyorlar. Olaydan bir yıl sonra heyetin verdiği rapor tesadüfen ellerine
geçiyor. Aynen şöyle:<br /><br />
'Türk'ler bütün ısrarlarımıza rağmen söz konusu fabrikayı bize göstermediler. Ancak
sanayi casusluğuna karşı aynı ürünün sahtesinin yapıldığı yerde bizi aldatmaya çalıştılar.
Biz nezaketen inanmış göründük. Orada bu sürede değil 50000 adet, 500 adet dahi baskı
yapılamayacağını çocuklar bile anlar. Bu bakımdan siparişin devamını Türk'lere vermekten
başka çaremiz yoktur.'<br /><p></p><img width="0" height="0" src="http://www.enginterzi.com.tr/aggbug.ashx?id=1afc3644-6f8f-4e0e-93d7-4a03ced41b62" /></body>
      <title>Türkler'le Başa Çıkılmaz</title>
      <guid isPermaLink="false">http://www.enginterzi.com.tr/PermaLink,guid,1afc3644-6f8f-4e0e-93d7-4a03ced41b62.aspx</guid>
      <link>http://www.enginterzi.com.tr/T%c3%bcrklerle+Ba%c5%9fa+%c3%87%c4%b1k%c4%b1lmaz.aspx</link>
      <pubDate>Sat, 15 Mar 2008 13:40:14 GMT</pubDate>
      <description>Türkler'le Başa Çıkılmaz&lt;br&gt;
&lt;br&gt;
Bana herhangi bir ülke gösterin ki, bizim sabredebildiklerimize katlanabilsin. Hiç
sanmıyorum. Elektrik kesik, ses eden yok! Sular akmaz, aynı sabır! Her iktidara gelen
zaman ister, eskisini aratır hale gelir, tık yok! Ama bütün bunlara rağmen en ufak
şeylere sevinir, mutlu olur, her şeyi unuturuz. Gösterişi sevmediğimiz gibi, başardıklarımızın
da farkında olmayız.&lt;br&gt;
&lt;br&gt;
Aşağıdaki örnek gibi; 
&lt;br&gt;
&lt;br&gt;
Bir reklam ajansımız, 50 000 adetlik baskılı T-Shirt ihracat bağlantısı yapmıştı.
Sıcak baskı tekniği ile yapılan bu uygulama, herhangi bir fotoğrafın T-Shirt'e basılması
şeklinde oluyordu. İlk 10 000 adetlik parti yerine ulaştığında, alıcı firma işin mükemmelliği
karşısında gözlerine inanamamış, uygulamayı yerinde inceleyip bilgi sahibi olmak için
bu konuda uzman iki kişilik heyeti Türkiye'ye yollamış. Olay buraya kadar göğüs kabartıcı.
Ancak, reklam şirketini almış bir panik. O kadar iptidai bir yöntem uyguluyorlar ki,
bunun ilgili firma tarafından anlaşılıp siparişin iptal edileceği korkusunu yaşıyorlar.
Derken heyet geliyor. Karşılıklı sevgi gösterileri, iltifatlar, izzet-i ikram; heyet
sabırsız, illaki imalatı göreceğiz diye sızlanıyorlar.&lt;br&gt;
&lt;br&gt;
Bizimkiler hala panikte; yapacak başka bir şey kalmıyor, utana sıkıla atölyenin yolunu
tutuyorlar. Sanayi sitesinin loş bir katındaki atölyeye girdiklerinde manzara şöyle;
bir kırık dökük masa, yerlerde boyalar, yırtık elbiseli birkaç çırak, iki usta ve
onbeş metrelik uzun bir tezgah ve tabii ki meşhur T-Shirt'ler baskı için sıra bekliyorlar.
Bu ortamda beyaz T-Shirt'lere bu kadar temiz baskı yapmak olanaksız. Ama heyet nezaketen
uygulamanın başlamasını istiyor. Kaybedecek hiçbir şeyi kalmayan firma yetkilileri,
çaresiz gösteriye başlıyorlar. İki çırak, masaya paralel tahtanın iki ucundan tutuyorlar.
Bu arada usta gerekli boya ayarını yapıyor ve: Şimdi!, diye bağırıyor. İki çırak var
güçleri ile öteki uca koşuyorlar. Sonuç: Harika....&lt;br&gt;
&lt;br&gt;
Ertesi gün heyet teşekkür ederek ayrılıyor. Korku ile beklenen birkaç gün sonra karşı
firmadan 50 000 adetlik bir sipariş daha geliyor. Bizimkiler, kabul edilmenin sarhoşluğu
içinde bayram yapıyorlar. Olaydan bir yıl sonra heyetin verdiği rapor tesadüfen ellerine
geçiyor. Aynen şöyle:&lt;br&gt;
&lt;br&gt;
'Türk'ler bütün ısrarlarımıza rağmen söz konusu fabrikayı bize göstermediler. Ancak
sanayi casusluğuna karşı aynı ürünün sahtesinin yapıldığı yerde bizi aldatmaya çalıştılar.
Biz nezaketen inanmış göründük. Orada bu sürede değil 50000 adet, 500 adet dahi baskı
yapılamayacağını çocuklar bile anlar. Bu bakımdan siparişin devamını Türk'lere vermekten
başka çaremiz yoktur.'&lt;br&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.enginterzi.com.tr/aggbug.ashx?id=1afc3644-6f8f-4e0e-93d7-4a03ced41b62" /&gt;</description>
      <category>Kendimden Biraz</category>
    </item>
    <item>
      <trackback:ping>http://www.enginterzi.com.tr/Trackback.aspx?guid=3e8f1f63-703f-4f40-897f-cc4699d7030d</trackback:ping>
      <pingback:server>http://www.enginterzi.com.tr/pingback.aspx</pingback:server>
      <pingback:target>http://www.enginterzi.com.tr/PermaLink,guid,3e8f1f63-703f-4f40-897f-cc4699d7030d.aspx</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">Bir .Net uygulamsı geliştirdiğimizde uygulamamızın
bir yerinde veya birden çok yerinde aynı değişken veya benzer dizileri kullanmak isteriz.<br />
Budurumda ASP.NET teknolijisi bize web uygulamamızda .INI veya Registry gibi kullanabileceğimiz
Web.Config dosyasını vermişitir.<br /><br />
Peki bu <b>WEB.CONFIG</b> nedir ? 
<br /><br /><p>
ASP.NET projelerinde her yeni projenin kök dizininde bulunan ve içinde bulunduğu uygulamalarla
ilgili olarak her türlü (güvenlik, yetkilendirme, uygulama genelindeki ayarlar, v.b.)
gibi uygulamayı ilgilendiren ve uygulamanın çalışmasında doğrudan etkili parametrelerin
tanımlandığı XML yapılı bir dosyadır. Sabit tanımlamaların ötesinde harici parametreler
de buraya eklenerek uygulama genelinde etkili ve erişilebilir olmaları rahatlıkla
sağlanabilir.
</p><p>
Web.Config yapısını açıklarsak ;
</p><p>
Web.Config dosyası XML biçimine sahip bir dosyadır ve bize uygulama için kendi tanımlamalarımızı
yapmamızı sağlayan bölümü <font color="#990000">&lt;appSettings&gt;</font> ile başlayıp <font color="#990033">&lt;/appSettings</font>&gt;
ile biten bölüm aralığıdır. Yapısı XML ile paralellik gösterdiğinden açılan her bölümlendirme
mutlaka "<font color="#0000ff">/</font>" ile kapatılmalıdır. Konumuzla ilgili bir
örnek ile bunu da açıklayalım;
</p><p><font color="#006600">*********************************************************************</font><br /><font face="Courier New, Courier, mono" size="2">&lt;appSettings&gt;<br />
&lt;add key="ConnectionString" value="server=localhost;database=Northwind;uid=sa;pwd="
/&gt;<br />
&lt;/appSettings&gt;</font><br /><font color="#006600">*********************************************************************</font></p><p>
Web.Config dosyası içerisinde &lt;appSettings&gt; ile başlayıp &lt;/appSettings&gt;
ile biten bölüm arasında &lt;add key="......." value="......." /&gt; şeklinde istediğimiz
kadar key ile tanımlama veya sabiti burada saklayabiliriz.
</p><b><font color="#a52a2a">Hemen bir uygulam örneği göstereyim ;</font></b><br /><br /><pre><span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px;"><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">string</span> ConnStr;
ConnStr=ConfigurationSettings.AppSettings[<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"ConnectionString"</span>]; </span></pre><br /><b><font color="#0000ff">Uygulama Yapısı ise şu şekilde ;</font></b><br /><br /><pre><span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px;">ConfigurationSettings.AppSettings
(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"KeyName"</span>)</span></pre><br /><br />
Engin Terzi<br /><br /><p></p><img width="0" height="0" src="http://www.enginterzi.com.tr/aggbug.ashx?id=3e8f1f63-703f-4f40-897f-cc4699d7030d" /></body>
      <title>Web.Config'de Bilgi Saklama ve Veritabanı Bağlantısını</title>
      <guid isPermaLink="false">http://www.enginterzi.com.tr/PermaLink,guid,3e8f1f63-703f-4f40-897f-cc4699d7030d.aspx</guid>
      <link>http://www.enginterzi.com.tr/WebConfigde+Bilgi+Saklama+Ve+Veritaban%c4%b1+Ba%c4%9flant%c4%b1s%c4%b1n%c4%b1.aspx</link>
      <pubDate>Fri, 14 Mar 2008 11:16:00 GMT</pubDate>
      <description>Bir .Net uygulamsı geliştirdiğimizde uygulamamızın bir yerinde veya birden çok yerinde aynı değişken veya benzer dizileri kullanmak isteriz.&lt;br&gt;
Budurumda ASP.NET teknolijisi bize web uygulamamızda .INI veya Registry gibi kullanabileceğimiz
Web.Config dosyasını vermişitir.&lt;br&gt;
&lt;br&gt;
Peki bu &lt;b&gt;WEB.CONFIG&lt;/b&gt; nedir ? 
&lt;br&gt;
&lt;br&gt;
&lt;p&gt;
ASP.NET projelerinde her yeni projenin kök dizininde bulunan ve içinde bulunduğu uygulamalarla
ilgili olarak her türlü (güvenlik, yetkilendirme, uygulama genelindeki ayarlar, v.b.)
gibi uygulamayı ilgilendiren ve uygulamanın çalışmasında doğrudan etkili parametrelerin
tanımlandığı XML yapılı bir dosyadır. Sabit tanımlamaların ötesinde harici parametreler
de buraya eklenerek uygulama genelinde etkili ve erişilebilir olmaları rahatlıkla
sağlanabilir.
&lt;/p&gt;
&lt;p&gt;
Web.Config yapısını açıklarsak ;
&lt;/p&gt;
&lt;p&gt;
Web.Config dosyası XML biçimine sahip bir dosyadır ve bize uygulama için kendi tanımlamalarımızı
yapmamızı sağlayan bölümü &lt;font color="#990000"&gt;&amp;lt;appSettings&amp;gt;&lt;/font&gt; ile başlayıp &lt;font color="#990033"&gt;&amp;lt;/appSettings&lt;/font&gt;&amp;gt;
ile biten bölüm aralığıdır. Yapısı XML ile paralellik gösterdiğinden açılan her bölümlendirme
mutlaka "&lt;font color="#0000ff"&gt;/&lt;/font&gt;" ile kapatılmalıdır. Konumuzla ilgili bir
örnek ile bunu da açıklayalım;
&lt;/p&gt;
&lt;p&gt;
&lt;font color="#006600"&gt;*********************************************************************&lt;/font&gt;
&lt;br&gt;
&lt;font face="Courier New, Courier, mono" size="2"&gt;&amp;lt;appSettings&amp;gt;&lt;br&gt;
&amp;lt;add key="ConnectionString" value="server=localhost;database=Northwind;uid=sa;pwd="
/&amp;gt;&lt;br&gt;
&amp;lt;/appSettings&amp;gt;&lt;/font&gt;
&lt;br&gt;
&lt;font color="#006600"&gt;*********************************************************************&lt;/font&gt;
&lt;/p&gt;
&lt;p&gt;
Web.Config dosyası içerisinde &amp;lt;appSettings&amp;gt; ile başlayıp &amp;lt;/appSettings&amp;gt;
ile biten bölüm arasında &amp;lt;add key="......." value="......." /&amp;gt; şeklinde istediğimiz
kadar key ile tanımlama veya sabiti burada saklayabiliriz.
&lt;/p&gt;
&lt;b&gt;&lt;font color="#a52a2a"&gt;Hemen bir uygulam örneği göstereyim ;&lt;/font&gt;&lt;/b&gt;
&lt;br&gt;
&lt;br&gt;
&lt;pre&gt;&lt;span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px;"&gt;&lt;span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;"&gt;string&lt;/span&gt; ConnStr;
ConnStr=ConfigurationSettings.AppSettings[&lt;span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;"&gt;"ConnectionString"&lt;/span&gt;]; &lt;/span&gt;&lt;/pre&gt;
&lt;br&gt;
&lt;b&gt;&lt;font color="#0000ff"&gt;Uygulama Yapısı ise şu şekilde ;&lt;/font&gt;&lt;/b&gt;
&lt;br&gt;
&lt;br&gt;
&lt;pre&gt;&lt;span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px;"&gt;ConfigurationSettings.AppSettings
(&lt;span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;"&gt;"KeyName"&lt;/span&gt;)&lt;/span&gt;&lt;/pre&gt;
&lt;br&gt;
&lt;br&gt;
Engin Terzi&lt;br&gt;
&lt;br&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.enginterzi.com.tr/aggbug.ashx?id=3e8f1f63-703f-4f40-897f-cc4699d7030d" /&gt;</description>
      <category>ASP.NET</category>
    </item>
    <item>
      <trackback:ping>http://www.enginterzi.com.tr/Trackback.aspx?guid=32058405-0644-4dde-9619-7717a1df77d5</trackback:ping>
      <pingback:server>http://www.enginterzi.com.tr/pingback.aspx</pingback:server>
      <pingback:target>http://www.enginterzi.com.tr/PermaLink,guid,32058405-0644-4dde-9619-7717a1df77d5.aspx</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <table border="0" cellpadding="0" cellspacing="0" height="6" width="700">
          <tbody>
            <tr>
              <td>
                <table border="0" cellpadding="0" cellspacing="0" width="100%">
                  <tbody>
                    <tr>
                      <td>
                        <h1 class="HabDetHeader">
                          <font color="#ff0000">Adobe AIR: Silverlight'a rakip</font>
                        </h1>
                      </td>
                      <td class="HabDetDate" align="right" width="130">
 </td>
                    </tr>
                  </tbody>
                </table>
              </td>
            </tr>
            <tr>
              <td height="10">
                <br />
              </td>
            </tr>
            <tr>
              <td class="y_editor_info" style="color: rgb(68, 68, 68);" height="15">
                <br />
              </td>
            </tr>
            <tr>
              <td height="10">
                <br />
              </td>
            </tr>
            <tr>
              <td class="yHabDetText">
                <table valign="top" align="right" border="0" cellpadding="0" cellspacing="0">
                  <tbody>
                    <tr>
                      <td>
                        <table valign="top" align="right" border="0" cellpadding="0" cellspacing="0">
                          <tbody>
                            <tr>
                              <td valign="top">
                                <img src="http://www.hurriyet.com.tr/_newsimages/5154192.jpg" alt="Adobe AIR: Silverlight'a rakip" align="right" border="0" hspace="2" vspace="6" />
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </td>
                    </tr>
                    <!--media başlangıç-->
                    <!-- media-->
                  </tbody>
                </table>
                <b>Microsoft'un Silverlight standardına Adobe'dan yanıt geldi: AIR'in son sürümü piyasaya
çıktı.</b>
                <br />
                <br />
                <p>
Adobe, AIR yazılımının ilk nihai sürümünü indirmeye sundu. AIR, "Adobe Integrated
Runtime" kelimelerinin kısaltması ve internet uygulamalarının avantajlarını klasik
masaüstü programlarınınkiyle birleştiriyor. Mesela AIR uygulamaları tarayıcıya entegre
olmadan HTML, CSS, JavaScript ve Flash'ı kullanabiliyor. Bunun dışında sürükle-bırak,
pano ve kısayollar kullanılabiliyor. Böylece AIR, Microsoft'un Silverlight uygulamasına
benzer bir adım atmış oluyor. 
</p>
                <p>
İlk AIR uygulamaları New York Times, AOL ve eBay tarafından internette kullanıma sunuldu.
Buna ek olarak Adobe, AIR uygulamalarının geliştirilmesinde kullanılan Flex ortamının
üçüncü sürümünü de yayımladı. Flex SDK (geliştirme paketi) ücretsiz olarak sunuluyor. 
</p>
              </td>
            </tr>
          </tbody>
        </table>
        <p>
        </p>
        <img width="0" height="0" src="http://www.enginterzi.com.tr/aggbug.ashx?id=32058405-0644-4dde-9619-7717a1df77d5" />
      </body>
      <title>Adobe AIR: Silverlight'a rakip</title>
      <guid isPermaLink="false">http://www.enginterzi.com.tr/PermaLink,guid,32058405-0644-4dde-9619-7717a1df77d5.aspx</guid>
      <link>http://www.enginterzi.com.tr/Adobe+AIR+Silverlighta+Rakip.aspx</link>
      <pubDate>Mon, 10 Mar 2008 13:29:31 GMT</pubDate>
      <description>&lt;table border="0" cellpadding="0" cellspacing="0" height="6" width="700"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;table border="0" cellpadding="0" cellspacing="0" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;h1 class="HabDetHeader"&gt;&lt;font color="#ff0000"&gt;Adobe AIR: Silverlight'a rakip&lt;/font&gt;
&lt;/h1&gt;
&lt;/td&gt;
&lt;td class="HabDetDate" align="right" width="130"&gt;
&amp;nbsp;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td height="10"&gt;
&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class="y_editor_info" style="color: rgb(68, 68, 68);" height="15"&gt;
&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td height="10"&gt;
&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class="yHabDetText"&gt;
&lt;table valign="top" align="right" border="0" cellpadding="0" cellspacing="0"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;table valign="top" align="right" border="0" cellpadding="0" cellspacing="0"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td valign="top"&gt;
&lt;img src="http://www.hurriyet.com.tr/_newsimages/5154192.jpg" alt="Adobe AIR: Silverlight'a rakip" align="right" border="0" hspace="2" vspace="6"&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;!--media başlangıç--&gt;
&lt;!-- media--&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;b&gt;Microsoft'un Silverlight standardına Adobe'dan yanıt geldi: AIR'in son sürümü piyasaya
çıktı.&lt;/b&gt;
&lt;br&gt;
&lt;br&gt;
&lt;p&gt;
Adobe, AIR yazılımının ilk nihai sürümünü indirmeye sundu. AIR, "Adobe Integrated
Runtime" kelimelerinin kısaltması ve internet uygulamalarının avantajlarını klasik
masaüstü programlarınınkiyle birleştiriyor. Mesela AIR uygulamaları tarayıcıya entegre
olmadan HTML, CSS, JavaScript ve Flash'ı kullanabiliyor. Bunun dışında sürükle-bırak,
pano ve kısayollar kullanılabiliyor. Böylece AIR, Microsoft'un Silverlight uygulamasına
benzer bir adım atmış oluyor. 
&lt;/p&gt;
&lt;p&gt;
İlk AIR uygulamaları New York Times, AOL ve eBay tarafından internette kullanıma sunuldu.
Buna ek olarak Adobe, AIR uygulamalarının geliştirilmesinde kullanılan Flex ortamının
üçüncü sürümünü de yayımladı. Flex SDK (geliştirme paketi) ücretsiz olarak sunuluyor. 
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.enginterzi.com.tr/aggbug.ashx?id=32058405-0644-4dde-9619-7717a1df77d5" /&gt;</description>
      <category>Teknoloji</category>
    </item>
    <item>
      <trackback:ping>http://www.enginterzi.com.tr/Trackback.aspx?guid=666dc589-dcbc-4a87-a078-12bcd8fea1a4</trackback:ping>
      <pingback:server>http://www.enginterzi.com.tr/pingback.aspx</pingback:server>
      <pingback:target>http://www.enginterzi.com.tr/PermaLink,guid,666dc589-dcbc-4a87-a078-12bcd8fea1a4.aspx</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <table border="0" cellpadding="0" cellspacing="0" height="6" width="700">
          <tbody>
            <tr>
              <td>
                <table border="0" cellpadding="0" cellspacing="0" width="100%">
                  <tbody>
                    <tr>
                      <td>
                        <h1 class="HabDetHeader">
                          <font color="#ff0000">Google neden yasaklandı?</font>
                        </h1>
                      </td>
                      <td class="HabDetDate" align="right" width="130">
 </td>
                    </tr>
                  </tbody>
                </table>
              </td>
            </tr>
            <tr>
              <td height="10">
                <br />
              </td>
            </tr>
            <tr>
              <td class="y_editor_info" style="color: rgb(68, 68, 68);" height="15">
                <br />
              </td>
            </tr>
            <tr>
              <td height="10">
                <br />
              </td>
            </tr>
            <tr>
              <td class="yHabDetText">
                <table valign="top" align="right" border="0" cellpadding="0" cellspacing="0">
                  <tbody>
                    <tr>
                      <td>
                        <table valign="top" align="right" border="0" cellpadding="0" cellspacing="0">
                          <tbody>
                            <tr>
                              <td valign="top">
                                <img src="http://www.hurriyet.com.tr/_newsimages/5154140.jpg" alt="Google neden yasaklandı?" align="right" border="0" hspace="2" vspace="6" />
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </td>
                    </tr>
                    <!--media başlangıç-->
                    <!-- media-->
                  </tbody>
                </table>
                <b>Pentagon, tehdit olabileceği gerekçesiyle Google'a yasak koymak durumunda kaldığını
açıkladı.</b>
                <br />
                <br />
                <p>
Pentagon, kendi çalışmaları üzerine fazla detaylı incelemelerde bulunan Google'a yasak
getirdi. Gerekçe olarak da potansiyel tehdit unsuru öne sürüldü. Google'ın haritalama
hizmetinin detaylara kadar inmesinin düşman çevrelerce öğrenilmesi istenmeyen gizli
bilgileri risk altına attığı düşünülüyor.
</p>
                <p>
Google sözcüsü, Amerikan ordusunun bu yönde görüşlerini açıkladığında, şirket olarak
resimlerin zaten kaldırdıklarını söyledi. Bu nedenle şu an Google, bu çalışmalarına
artık devam edemeyecek.
</p>
                <p>
Savunma departmanından bir yetkili ise şunları ifade etti: "Resimler, 360 derece olarak
tüm bölgeyi kaplıyor. Bu bölgenin içinde erişim kontol noktaları ve Pentagon tarafından
kullanılan araçlar da var. Bu kadar detaylı haritalama, bizim için büyük tehdit olabilir".
</p>
                <p>
                  <strong>
                    <font size="4">Şimdi ne olacak?</font>
                  </strong>
                  <br />
Populer haritalama yazılımları bir yana, kullanıcı Google'la sokaklara kadar inebiliyordu.
Bu sayede o kullanıcı, o caddede dolaşıyormuş hissine kapılıyordu. Ancak Pentagon'un
bu kararı, yazılımın basit bir yazılım olmadığını, olayın caddeleri gezmekle sınırlı
kalmadığını gösteriyor. 
</p>
                <p>
Google sözcüsü Yu, "Resimleri kaldırmak bu kadar kolay olmamalı, sanırım bu yöndeki
politikaları biraz yumuşatmak lazım. Sadece askeriye için değil, tüketiciler için
de. Eğer insanlar bu yazılımdan dolayı problem yaşarsa, mutlaka bizle irtibata geçmeliler"
diyor.
</p>
                <p>
Görüldüğü gibi Google, bu hizmeti kötü niyetli olarak kullanılabileceği ve Pentagon
için tehdit oluşturacağı gerekçesiyle artık daha temkinli olmak durumunda. Bu sorunu
aslında sadece askeriyeye indirmek de doğru değil, zira ileride bu yazılımdan, onu
kullanan normal vatandaşlar bile şikayet edebilir...
</p>
              </td>
            </tr>
          </tbody>
        </table>
        <p>
        </p>
        <img width="0" height="0" src="http://www.enginterzi.com.tr/aggbug.ashx?id=666dc589-dcbc-4a87-a078-12bcd8fea1a4" />
      </body>
      <title>Google neden yasaklandı?</title>
      <guid isPermaLink="false">http://www.enginterzi.com.tr/PermaLink,guid,666dc589-dcbc-4a87-a078-12bcd8fea1a4.aspx</guid>
      <link>http://www.enginterzi.com.tr/Google+Neden+Yasakland%c4%b1.aspx</link>
      <pubDate>Mon, 10 Mar 2008 13:27:54 GMT</pubDate>
      <description>&lt;table border="0" cellpadding="0" cellspacing="0" height="6" width="700"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;table border="0" cellpadding="0" cellspacing="0" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;h1 class="HabDetHeader"&gt;&lt;font color="#ff0000"&gt;Google neden yasaklandı?&lt;/font&gt;
&lt;/h1&gt;
&lt;/td&gt;
&lt;td class="HabDetDate" align="right" width="130"&gt;
&amp;nbsp;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td height="10"&gt;
&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class="y_editor_info" style="color: rgb(68, 68, 68);" height="15"&gt;
&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td height="10"&gt;
&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class="yHabDetText"&gt;
&lt;table valign="top" align="right" border="0" cellpadding="0" cellspacing="0"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;table valign="top" align="right" border="0" cellpadding="0" cellspacing="0"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td valign="top"&gt;
&lt;img src="http://www.hurriyet.com.tr/_newsimages/5154140.jpg" alt="Google neden yasaklandı?" align="right" border="0" hspace="2" vspace="6"&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;!--media başlangıç--&gt;
&lt;!-- media--&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;b&gt;Pentagon, tehdit olabileceği gerekçesiyle Google'a yasak koymak durumunda kaldığını
açıkladı.&lt;/b&gt;
&lt;br&gt;
&lt;br&gt;
&lt;p&gt;
Pentagon, kendi çalışmaları üzerine fazla detaylı incelemelerde bulunan Google'a yasak
getirdi. Gerekçe olarak da potansiyel tehdit unsuru öne sürüldü. Google'ın haritalama
hizmetinin detaylara kadar inmesinin düşman çevrelerce öğrenilmesi istenmeyen gizli
bilgileri risk altına attığı düşünülüyor.
&lt;/p&gt;
&lt;p&gt;
Google sözcüsü, Amerikan ordusunun bu yönde görüşlerini açıkladığında, şirket olarak
resimlerin zaten kaldırdıklarını söyledi. Bu nedenle şu an Google, bu çalışmalarına
artık devam edemeyecek.
&lt;/p&gt;
&lt;p&gt;
Savunma departmanından bir yetkili ise şunları ifade etti: "Resimler, 360 derece olarak
tüm bölgeyi kaplıyor. Bu bölgenin içinde erişim kontol noktaları ve Pentagon tarafından
kullanılan araçlar da var. Bu kadar detaylı haritalama, bizim için büyük tehdit olabilir".
&lt;/p&gt;
&lt;p&gt;
&lt;strong&gt;&lt;font size="4"&gt;Şimdi ne olacak?&lt;/font&gt;&lt;/strong&gt;
&lt;br&gt;
Populer haritalama yazılımları bir yana, kullanıcı Google'la sokaklara kadar inebiliyordu.
Bu sayede o kullanıcı, o caddede dolaşıyormuş hissine kapılıyordu. Ancak Pentagon'un
bu kararı, yazılımın basit bir yazılım olmadığını, olayın caddeleri gezmekle sınırlı
kalmadığını gösteriyor. 
&lt;/p&gt;
&lt;p&gt;
Google sözcüsü Yu, "Resimleri kaldırmak bu kadar kolay olmamalı, sanırım bu yöndeki
politikaları biraz yumuşatmak lazım. Sadece askeriye için değil, tüketiciler için
de. Eğer insanlar bu yazılımdan dolayı problem yaşarsa, mutlaka bizle irtibata geçmeliler"
diyor.
&lt;/p&gt;
&lt;p&gt;
Görüldüğü gibi Google, bu hizmeti kötü niyetli olarak kullanılabileceği ve Pentagon
için tehdit oluşturacağı gerekçesiyle artık daha temkinli olmak durumunda. Bu sorunu
aslında sadece askeriyeye indirmek de doğru değil, zira ileride bu yazılımdan, onu
kullanan normal vatandaşlar bile şikayet edebilir...
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.enginterzi.com.tr/aggbug.ashx?id=666dc589-dcbc-4a87-a078-12bcd8fea1a4" /&gt;</description>
      <category>Teknoloji</category>
    </item>
    <item>
      <trackback:ping>http://www.enginterzi.com.tr/Trackback.aspx?guid=cc1bf636-9ad2-4126-be52-741fdb3d76a5</trackback:ping>
      <pingback:server>http://www.enginterzi.com.tr/pingback.aspx</pingback:server>
      <pingback:target>http://www.enginterzi.com.tr/PermaLink,guid,cc1bf636-9ad2-4126-be52-741fdb3d76a5.aspx</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <table border="0" cellpadding="0" cellspacing="0" height="6" width="700">
          <tbody>
            <tr>
              <td>
                <table border="0" cellpadding="0" cellspacing="0" width="100%">
                  <tbody>
                    <tr>
                      <td>
                        <h1 class="HabDetHeader">IBM veriyi ışık kullanarak iletmeyi başardı
</h1>
                      </td>
                      <td class="HabDetDate" align="right" width="130">
 </td>
                    </tr>
                  </tbody>
                </table>
              </td>
            </tr>
            <tr>
              <td height="10">
                <br />
              </td>
            </tr>
            <tr>
              <td class="y_editor_info" style="color: rgb(68, 68, 68);" height="15">
                <br />
              </td>
            </tr>
            <tr>
              <td height="10">
                <br />
              </td>
            </tr>
            <tr>
              <td class="yHabDetText">
                <table valign="top" align="right" border="0" cellpadding="0" cellspacing="0">
                  <tbody>
                    <tr>
                      <td>
                        <table valign="top" align="right" border="0" cellpadding="0" cellspacing="0">
                          <tbody>
                            <tr>
                              <td valign="top">
                                <img src="http://www.hurriyet.com.tr/_newsimages/5134108.jpg" alt="IBM veriyi ışık kullanarak iletmeyi başardı" align="right" border="0" hspace="2" vspace="6" />
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </td>
                    </tr>
                    <!--media başlangıç-->
                    <!-- media-->
                  </tbody>
                </table>
                <b>IBM, 1 saniye içerisinde terabaytlarca bilgiyi transfer edebilecek yeni bir sistem
geliştirdi.</b>
                <br />
                <br />
                <p>
IBM bilimadamları, yongalar içerisindeki bilgi akışını kablolarla değil, ışık ile
göndermenin yolunu buldu. Henüz prototip aşamasında olan yeni teknoloji, çok büyük
hacimli dosyaların saniyeler içerisinde transfer edilebilmesinin yolunu açıyor. Yeni
teknoloji, 100 wattlık standart bir ampulün tükettiği enerjiyle 8 terabyte'lık bilginin,
yani yaklaşık 5.000 yüksek çözünürlüklü video dosyasının 1 saniye içinde transfer
edilebilmesini sağlıyor. Işıkla çalışacak yongalar, cep telefonlarından süper bilgisayarlara
kadar tüm iletişim ve bilgi teknolojisi cihazlarında devrim yaratacak değişiklikler
getirecek.
</p>
                <p>
Mevcut yonga setlerinden 100 kat daha düşük enerji tüketimiyle dikkat çeken yeni teknoloji,
tüketici elektroniğinden süper bilgisayar uygulamalarına kadar geniş bir alanda kullanılabilecek.
Örneğin yüksek çözünürlüklü video (HD) uygulamalarındaki bant genişliği kayda değer
şekilde artacak. Video servisi yapan siteler böylelikle milyonlarca videodan oluşan
kütüphanelerine saniyeler içerisinde erişim imkanı sağlayabilecek. 
</p>
                <p>
Doktorlar hastalarının röntgen, MR ve tomografi gibi dijital tıbbi görüntülerini birbirleriyle
anında paylaşabilecek. Işıkla çalışan küçük mikroçipler, tüketici elektroniği alanında,
örneğin cep telefonlarının yüksek çözünürlüklü tam bir film dosyasını başka herhangi
bir cihaza gerek duymadan birbirleri arasında aktarabilmesini sağlayacak. Yeni teknoloji,
süper bilgisayarlarda devam eden tıp, iklim ve moleküler araştırmalara da önemli bir
hız kazandıracak. 
</p>
                <p>
Araştırmayı yöneten ekibin lideri Clint Schow, "Geçtiğimiz yıl, standart bir yonga
seti içerisinde önemli değişiklikler yaparak, tek bir film dosyasını 1 saniyede transfer
edebilmeyi başarmıştık. Şimdi de ışığı veriyi taşıyan ana unsur haline getirmeyi başardık.
Ürettiğimiz prototip yonga, sadece özel laboratuvar koşullarında çalışan bir teori
değil; 2 yıl içerisinde pazara çıkabilecek düzeyde" diyor. 
</p>
              </td>
            </tr>
          </tbody>
        </table>
        <p>
        </p>
        <img width="0" height="0" src="http://www.enginterzi.com.tr/aggbug.ashx?id=cc1bf636-9ad2-4126-be52-741fdb3d76a5" />
      </body>
      <title>IBM veriyi ışık kullanarak iletmeyi başardı</title>
      <guid isPermaLink="false">http://www.enginterzi.com.tr/PermaLink,guid,cc1bf636-9ad2-4126-be52-741fdb3d76a5.aspx</guid>
      <link>http://www.enginterzi.com.tr/IBM+Veriyi+I%c5%9f%c4%b1k+Kullanarak+%c4%b0letmeyi+Ba%c5%9fard%c4%b1.aspx</link>
      <pubDate>Fri, 07 Mar 2008 15:22:24 GMT</pubDate>
      <description>&lt;table border="0" cellpadding="0" cellspacing="0" height="6" width="700"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;table border="0" cellpadding="0" cellspacing="0" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;h1 class="HabDetHeader"&gt;IBM veriyi ışık kullanarak iletmeyi başardı
&lt;/h1&gt;
&lt;/td&gt;
&lt;td class="HabDetDate" align="right" width="130"&gt;
&amp;nbsp;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td height="10"&gt;
&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class="y_editor_info" style="color: rgb(68, 68, 68);" height="15"&gt;
&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td height="10"&gt;
&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class="yHabDetText"&gt;
&lt;table valign="top" align="right" border="0" cellpadding="0" cellspacing="0"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;table valign="top" align="right" border="0" cellpadding="0" cellspacing="0"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td valign="top"&gt;
&lt;img src="http://www.hurriyet.com.tr/_newsimages/5134108.jpg" alt="IBM veriyi ışık kullanarak iletmeyi başardı" align="right" border="0" hspace="2" vspace="6"&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;!--media başlangıç--&gt;
&lt;!-- media--&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;b&gt;IBM, 1 saniye içerisinde terabaytlarca bilgiyi transfer edebilecek yeni bir sistem
geliştirdi.&lt;/b&gt;
&lt;br&gt;
&lt;br&gt;
&lt;p&gt;
IBM bilimadamları, yongalar içerisindeki bilgi akışını kablolarla değil, ışık ile
göndermenin yolunu buldu. Henüz prototip aşamasında olan yeni teknoloji, çok büyük
hacimli dosyaların saniyeler içerisinde transfer edilebilmesinin yolunu açıyor. Yeni
teknoloji, 100 wattlık standart bir ampulün tükettiği enerjiyle 8 terabyte'lık bilginin,
yani yaklaşık 5.000 yüksek çözünürlüklü video dosyasının 1 saniye içinde transfer
edilebilmesini sağlıyor. Işıkla çalışacak yongalar, cep telefonlarından süper bilgisayarlara
kadar tüm iletişim ve bilgi teknolojisi cihazlarında devrim yaratacak değişiklikler
getirecek.
&lt;/p&gt;
&lt;p&gt;
Mevcut yonga setlerinden 100 kat daha düşük enerji tüketimiyle dikkat çeken yeni teknoloji,
tüketici elektroniğinden süper bilgisayar uygulamalarına kadar geniş bir alanda kullanılabilecek.
Örneğin yüksek çözünürlüklü video (HD) uygulamalarındaki bant genişliği kayda değer
şekilde artacak. Video servisi yapan siteler böylelikle milyonlarca videodan oluşan
kütüphanelerine saniyeler içerisinde erişim imkanı sağlayabilecek. 
&lt;/p&gt;
&lt;p&gt;
Doktorlar hastalarının röntgen, MR ve tomografi gibi dijital tıbbi görüntülerini birbirleriyle
anında paylaşabilecek. Işıkla çalışan küçük mikroçipler, tüketici elektroniği alanında,
örneğin cep telefonlarının yüksek çözünürlüklü tam bir film dosyasını başka herhangi
bir cihaza gerek duymadan birbirleri arasında aktarabilmesini sağlayacak. Yeni teknoloji,
süper bilgisayarlarda devam eden tıp, iklim ve moleküler araştırmalara da önemli bir
hız kazandıracak. 
&lt;/p&gt;
&lt;p&gt;
Araştırmayı yöneten ekibin lideri Clint Schow, "Geçtiğimiz yıl, standart bir yonga
seti içerisinde önemli değişiklikler yaparak, tek bir film dosyasını 1 saniyede transfer
edebilmeyi başarmıştık. Şimdi de ışığı veriyi taşıyan ana unsur haline getirmeyi başardık.
Ürettiğimiz prototip yonga, sadece özel laboratuvar koşullarında çalışan bir teori
değil; 2 yıl içerisinde pazara çıkabilecek düzeyde" diyor. 
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.enginterzi.com.tr/aggbug.ashx?id=cc1bf636-9ad2-4126-be52-741fdb3d76a5" /&gt;</description>
      <category>Teknoloji</category>
    </item>
    <item>
      <trackback:ping>http://www.enginterzi.com.tr/Trackback.aspx?guid=126db77e-7565-468e-a604-d7b0aeb122a7</trackback:ping>
      <pingback:server>http://www.enginterzi.com.tr/pingback.aspx</pingback:server>
      <pingback:target>http://www.enginterzi.com.tr/PermaLink,guid,126db77e-7565-468e-a604-d7b0aeb122a7.aspx</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <table border="0" cellpadding="0" cellspacing="0" height="6" width="700">
          <tbody>
            <tr>
              <td>
                <table border="0" cellpadding="0" cellspacing="0" width="100%">
                  <tbody>
                    <tr>
                      <td>
                        <h1 class="HabDetHeader">Vista logoları başa bela
</h1>
                      </td>
                      <td class="HabDetDate" align="right" width="130">
 </td>
                    </tr>
                  </tbody>
                </table>
              </td>
            </tr>
            <tr>
              <td height="10">
                <br />
              </td>
            </tr>
            <tr>
              <td class="y_editor_info" style="color: rgb(68, 68, 68);" height="15">
chip.com.tr</td>
            </tr>
            <tr>
              <td height="10">
                <br />
              </td>
            </tr>
            <tr>
              <td class="yHabDetText">
                <table valign="top" align="right" border="0" cellpadding="0" cellspacing="0">
                  <tbody>
                    <tr>
                      <td>
                        <table valign="top" align="right" border="0" cellpadding="0" cellspacing="0">
                          <tbody>
                            <tr>
                              <td valign="top">
                                <img src="http://www.hurriyet.com.tr/_newsimages/5134183.jpg" alt="Vista logoları başa bela" align="right" border="0" hspace="2" vspace="6" />
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </td>
                    </tr>
                    <!--media başlangıç-->
                    <!-- media-->
                  </tbody>
                </table>
                <b>Microsoft, Vista logoları yüzünden büyük tazminatlar ödemek zorunda kalabilir.
Neden mi? Cevabı burada...</b>
                <br />
                <br />
                <p>
Amerika'daki bazı kullanıcılarının, PC'lerinin Vista ile uyumlu olduğunu gösteren
"Vista Capable" etiketi ile ilgili bir şikayeti var: Microsoft'un bu logo ile yanlış
bilgilendirme yaptığını iddia ediyorlar. Bir yerel mahkeme yazılım şirketine karşı
şikâyetleri toplamaya başladı bile.
</p>
                <p>
Microsoft, Vista'nın son kullanıcıya dağıtılmasından birkaç gün önce "Vista Capable"
ile bilgisayarların Vista'ya olan elverişliliğini derecelendirmişti. Tüketici, bu
logo sayesinde PC'nin gelecek olan işletim sistemine hazır olduğunu anlıyordu.
</p>
                <p>
Fakat bu logoyu taşımaya hak kazanan bazı sistemlerin Vista'nın en basit sürümü olan
Home Basic için bile yeterli olması Microsoft'un başını ağrıtacak gibi gözüküyor.
Bazı kullanıcılar bu durumda kendilerini aldatılmış olarak hissediyorlar, zira Vista'nın
Aero arayüzü gibi vaat edilen özelliklerinden mahrum kalmış oluyorlar. 
</p>
                <p>
Bu şikâyetlere karşı Microsoft, Vista sürümleri arasındaki farkı açık ve seçik bir
şekilde açıkladığını ve diğer sürümler için "Vista Premium Ready" logosunu bu yüzden
kullandığını söylüyor.
</p>
                <p>
Eğer yapılan şikâyetler ciddiye alınırsa, Microsoft birçok tüketiciye tazminat ödemek
zorunda kalabilir.
</p>
              </td>
            </tr>
          </tbody>
        </table>
        <p>
        </p>
        <img width="0" height="0" src="http://www.enginterzi.com.tr/aggbug.ashx?id=126db77e-7565-468e-a604-d7b0aeb122a7" />
      </body>
      <title>Vista logoları başa bela</title>
      <guid isPermaLink="false">http://www.enginterzi.com.tr/PermaLink,guid,126db77e-7565-468e-a604-d7b0aeb122a7.aspx</guid>
      <link>http://www.enginterzi.com.tr/Vista+Logolar%c4%b1+Ba%c5%9fa+Bela.aspx</link>
      <pubDate>Fri, 07 Mar 2008 15:19:59 GMT</pubDate>
      <description>&lt;table border="0" cellpadding="0" cellspacing="0" height="6" width="700"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;table border="0" cellpadding="0" cellspacing="0" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;h1 class="HabDetHeader"&gt;Vista logoları başa bela
&lt;/h1&gt;
&lt;/td&gt;
&lt;td class="HabDetDate" align="right" width="130"&gt;
&amp;nbsp;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td height="10"&gt;
&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class="y_editor_info" style="color: rgb(68, 68, 68);" height="15"&gt;
chip.com.tr&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td height="10"&gt;
&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class="yHabDetText"&gt;
&lt;table valign="top" align="right" border="0" cellpadding="0" cellspacing="0"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;table valign="top" align="right" border="0" cellpadding="0" cellspacing="0"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td valign="top"&gt;
&lt;img src="http://www.hurriyet.com.tr/_newsimages/5134183.jpg" alt="Vista logoları başa bela" align="right" border="0" hspace="2" vspace="6"&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;!--media başlangıç--&gt;
&lt;!-- media--&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;b&gt;Microsoft, Vista logoları yüzünden büyük tazminatlar ödemek zorunda kalabilir.
Neden mi? Cevabı burada...&lt;/b&gt;
&lt;br&gt;
&lt;br&gt;
&lt;p&gt;
Amerika'daki bazı kullanıcılarının, PC'lerinin Vista ile uyumlu olduğunu gösteren
"Vista Capable" etiketi ile ilgili bir şikayeti var: Microsoft'un bu logo ile yanlış
bilgilendirme yaptığını iddia ediyorlar. Bir yerel mahkeme yazılım şirketine karşı
şikâyetleri toplamaya başladı bile.
&lt;/p&gt;
&lt;p&gt;
Microsoft, Vista'nın son kullanıcıya dağıtılmasından birkaç gün önce "Vista Capable"
ile bilgisayarların Vista'ya olan elverişliliğini derecelendirmişti. Tüketici, bu
logo sayesinde PC'nin gelecek olan işletim sistemine hazır olduğunu anlıyordu.
&lt;/p&gt;
&lt;p&gt;
Fakat bu logoyu taşımaya hak kazanan bazı sistemlerin Vista'nın en basit sürümü olan
Home Basic için bile yeterli olması Microsoft'un başını ağrıtacak gibi gözüküyor.
Bazı kullanıcılar bu durumda kendilerini aldatılmış olarak hissediyorlar, zira Vista'nın
Aero arayüzü gibi vaat edilen özelliklerinden mahrum kalmış oluyorlar. 
&lt;/p&gt;
&lt;p&gt;
Bu şikâyetlere karşı Microsoft, Vista sürümleri arasındaki farkı açık ve seçik bir
şekilde açıkladığını ve diğer sürümler için "Vista Premium Ready" logosunu bu yüzden
kullandığını söylüyor.
&lt;/p&gt;
&lt;p&gt;
Eğer yapılan şikâyetler ciddiye alınırsa, Microsoft birçok tüketiciye tazminat ödemek
zorunda kalabilir.
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.enginterzi.com.tr/aggbug.ashx?id=126db77e-7565-468e-a604-d7b0aeb122a7" /&gt;</description>
      <category>Teknoloji</category>
    </item>
    <item>
      <trackback:ping>http://www.enginterzi.com.tr/Trackback.aspx?guid=76d5c00a-be70-4abd-a0f1-8a7a91354036</trackback:ping>
      <pingback:server>http://www.enginterzi.com.tr/pingback.aspx</pingback:server>
      <pingback:target>http://www.enginterzi.com.tr/PermaLink,guid,76d5c00a-be70-4abd-a0f1-8a7a91354036.aspx</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <table border="0" cellpadding="0" cellspacing="0" height="6" width="700">
          <tbody>
            <tr>
              <td>
                <table border="0" cellpadding="0" cellspacing="0" width="100%">
                  <tbody>
                    <tr>
                      <td>
                        <h1 class="HabDetHeader">PS2 desteği sona eriyor
</h1>
                      </td>
                      <td class="HabDetDate" align="right" width="130">
 </td>
                    </tr>
                  </tbody>
                </table>
              </td>
            </tr>
            <tr>
              <td height="10">
                <br />
              </td>
            </tr>
            <tr>
              <td class="y_editor_info" style="color: rgb(68, 68, 68);" height="15">
chip.com.tr</td>
            </tr>
            <tr>
              <td height="10">
                <br />
              </td>
            </tr>
            <tr>
              <td class="yHabDetText">
                <table valign="top" align="right" border="0" cellpadding="0" cellspacing="0">
                  <tbody>
                    <tr>
                      <td>
                        <table valign="top" align="right" border="0" cellpadding="0" cellspacing="0">
                          <tbody>
                            <tr>
                              <td valign="top">
                                <img src="http://www.hurriyet.com.tr/_newsimages/5134289.jpg" alt="PS2 desteği sona eriyor" align="right" border="0" hspace="2" vspace="6" />
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </td>
                    </tr>
                    <!--media başlangıç-->
                    <!-- media-->
                  </tbody>
                </table>
                <b>Sony, ABD ve İngiltere'de PS2 oyunlarıyla uyumlu Playstation 3 modellerinin satışını
durduruyor.</b>
                <br />
                <br />
                <p>
Sony Style sitesi, bundan sonra Sony PlayStation 3 80GB modelini satmama kararı aldı.
Onun yerine Amerika ve İngiltere'de Sony'nin üzerine yoğunlaştığı PS3 40GB 400 dolardan
satılacak. Bu model 80GB'lık modele göre bazı özellikleri kırpılmış olarak geliyor.
Örneğin konsolda 4 yerine 2 adet USB bulunuyor ve Super Audio CD sistemi bulunmuyor.
</p>
                <p>
PlayStation ve PlayStation 2 oyunları dahili emülatör yazılımı aracılığıyla 60GB ve
80GB PS3 üzerinde oynanabiliyor. Şayet eski oyunları oynama gibi bir niyetiniz varsa
elinizi çabuk tutmalısınız; zira emülatör desteği artık bütün PS3 modellerinden çekilecek.
</p>
                <p>
Sony'den gelen açıklamada ise "Bu kötü bir gelişme değil çünkü gelişmiş oyun konsolu
için hazırlanan yeni oyunlar çoğalıyor ve eskilerinin yerini alacak" denildi.
</p>
              </td>
            </tr>
          </tbody>
        </table>
        <p>
        </p>
        <img width="0" height="0" src="http://www.enginterzi.com.tr/aggbug.ashx?id=76d5c00a-be70-4abd-a0f1-8a7a91354036" />
      </body>
      <title>PS2 desteği sona eriyor</title>
      <guid isPermaLink="false">http://www.enginterzi.com.tr/PermaLink,guid,76d5c00a-be70-4abd-a0f1-8a7a91354036.aspx</guid>
      <link>http://www.enginterzi.com.tr/PS2+Deste%c4%9fi+Sona+Eriyor.aspx</link>
      <pubDate>Fri, 07 Mar 2008 15:18:57 GMT</pubDate>
      <description>&lt;table border="0" cellpadding="0" cellspacing="0" height="6" width="700"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;table border="0" cellpadding="0" cellspacing="0" width="100%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;h1 class="HabDetHeader"&gt;PS2 desteği sona eriyor
&lt;/h1&gt;
&lt;/td&gt;
&lt;td class="HabDetDate" align="right" width="130"&gt;
&amp;nbsp;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td height="10"&gt;
&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class="y_editor_info" style="color: rgb(68, 68, 68);" height="15"&gt;
chip.com.tr&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td height="10"&gt;
&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class="yHabDetText"&gt;
&lt;table valign="top" align="right" border="0" cellpadding="0" cellspacing="0"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;table valign="top" align="right" border="0" cellpadding="0" cellspacing="0"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td valign="top"&gt;
&lt;img src="http://www.hurriyet.com.tr/_newsimages/5134289.jpg" alt="PS2 desteği sona eriyor" align="right" border="0" hspace="2" vspace="6"&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;!--media başlangıç--&gt;
&lt;!-- media--&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;b&gt;Sony, ABD ve İngiltere'de PS2 oyunlarıyla uyumlu Playstation 3 modellerinin satışını
durduruyor.&lt;/b&gt;
&lt;br&gt;
&lt;br&gt;
&lt;p&gt;
Sony Style sitesi, bundan sonra Sony PlayStation 3 80GB modelini satmama kararı aldı.
Onun yerine Amerika ve İngiltere'de Sony'nin üzerine yoğunlaştığı PS3 40GB 400 dolardan
satılacak. Bu model 80GB'lık modele göre bazı özellikleri kırpılmış olarak geliyor.
Örneğin konsolda 4 yerine 2 adet USB bulunuyor ve Super Audio CD sistemi bulunmuyor.
&lt;/p&gt;
&lt;p&gt;
PlayStation ve PlayStation 2 oyunları dahili emülatör yazılımı aracılığıyla 60GB ve
80GB PS3 üzerinde oynanabiliyor. Şayet eski oyunları oynama gibi bir niyetiniz varsa
elinizi çabuk tutmalısınız; zira emülatör desteği artık bütün PS3 modellerinden çekilecek.
&lt;/p&gt;
&lt;p&gt;
Sony'den gelen açıklamada ise "Bu kötü bir gelişme değil çünkü gelişmiş oyun konsolu
için hazırlanan yeni oyunlar çoğalıyor ve eskilerinin yerini alacak" denildi.
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.enginterzi.com.tr/aggbug.ashx?id=76d5c00a-be70-4abd-a0f1-8a7a91354036" /&gt;</description>
      <category>Teknoloji</category>
    </item>
    <item>
      <trackback:ping>http://www.enginterzi.com.tr/Trackback.aspx?guid=c25900c2-e05b-4ec3-80ae-96c329372131</trackback:ping>
      <pingback:server>http://www.enginterzi.com.tr/pingback.aspx</pingback:server>
      <pingback:target>http://www.enginterzi.com.tr/PermaLink,guid,c25900c2-e05b-4ec3-80ae-96c329372131.aspx</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">
        <table border="0" cellpadding="0" cellspacing="0" height="6" width="700">
          <tbody>
            <tr>
              <td>
                <table border="0" cellpadding="0" cellspacing="0" height="98" width="829">
                  <tbody>
                    <tr>
                      <td>
                        <h1 class="HabDetHeader">
                          <font color="#ff0000">Google'ın reklam gelirleri tehlikede</font>
                        </h1>
                      </td>
                      <td class="HabDetDate" align="right" width="130">
 </td>
                    </tr>
                  </tbody>
                </table>
              </td>
            </tr>
            <tr>
              <td height="10">
                <br />
              </td>
            </tr>
            <tr>
              <td class="y_editor_info" style="color: rgb(68, 68, 68);" height="15">
                <br />
              </td>
            </tr>
            <tr>
              <td height="10">
                <br />
              </td>
            </tr>
            <tr>
              <td class="yHabDetText">
                <table valign="top" align="right" border="0" cellpadding="0" cellspacing="0">
                  <tbody>
                    <tr>
                      <td>
                        <table valign="top" align="right" border="0" cellpadding="0" cellspacing="0">
                          <tbody>
                            <tr>
                              <td valign="top">
                                <img src="http://www.hurriyet.com.tr/_newsimages/5134197.jpg" alt="Google'ın reklam gelirleri tehlikede" align="right" border="0" hspace="2" vspace="6" />
                              </td>
                            </tr>
                          </tbody>
                        </table>
                      </td>
                    </tr>
                    <!--media başlangıç-->
                    <!-- media-->
                  </tbody>
                </table>
                <b>Yavaşlayan Amerikan ekonomisi, sonunda ülkenin internet devi Google'ın da canını
yakmaya başladı.</b>
                <br />
                <br />
                <p>
Google'ın hisse değerleri ülkenin ekonomik durumundan olumsuz yönde etkilenmeye başladı.
Yavaş büyüyen Amerikan ekonomisinden zarar gören Google'ın hisse değerleri düşüyor.
</p>
                <p>
Comscore*'un araştırmasına göre Google'ın reklam gelirleri geçen seneneye göre 1 milyon
Dolar düşerek 532 milyon Dolar olurken, geçtiğimiz günlerde şirketin hisse değeri
de yüzde 4,57 oranında düşerek 464 olar oldu. 
</p>
                <p>
2007 yılının Kasım ayı başlarında şirketin hisse değeri 747,24 Doları bulmuştu ve
2008'in başında düşüş başladı. Google yeni seneye 700 Dolarlık hisse değeriyle girmişti.
</p>
                <p>
Google'a bir şeyler aramak için giren insanların sayısı araştırmalara göre artmış
görünse de, reklam tıklamalarında aynı artış görülmüyor ve bilindiği gibi reklam gelirleri
Google'nın ana gelirlerinden biri... 
</p>
                <p>
Görünen o ki, yavaşlayan Amerikan ekonomisi Google'a zarar vermeye devam edecek.
</p>
                <p>
(*) İnternet pazarlama araştırmaları yapan bir şirket.
</p>
                <p>
                  <font color="#808080" size="2">Haber Kaynağı : hurriyet.com.tr</font>
                  <br />
                </p>
              </td>
            </tr>
          </tbody>
        </table>
        <p>
        </p>
        <img width="0" height="0" src="http://www.enginterzi.com.tr/aggbug.ashx?id=c25900c2-e05b-4ec3-80ae-96c329372131" />
      </body>
      <title>Google'ın reklam gelirleri tehlikede</title>
      <guid isPermaLink="false">http://www.enginterzi.com.tr/PermaLink,guid,c25900c2-e05b-4ec3-80ae-96c329372131.aspx</guid>
      <link>http://www.enginterzi.com.tr/Google%c4%b1n+Reklam+Gelirleri+Tehlikede.aspx</link>
      <pubDate>Fri, 07 Mar 2008 15:17:45 GMT</pubDate>
      <description>&lt;table border="0" cellpadding="0" cellspacing="0" height="6" width="700"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;table border="0" cellpadding="0" cellspacing="0" height="98" width="829"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;h1 class="HabDetHeader"&gt;&lt;font color="#ff0000"&gt;Google'ın reklam gelirleri tehlikede&lt;/font&gt;
&lt;/h1&gt;
&lt;/td&gt;
&lt;td class="HabDetDate" align="right" width="130"&gt;
&amp;nbsp;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td height="10"&gt;
&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class="y_editor_info" style="color: rgb(68, 68, 68);" height="15"&gt;
&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td height="10"&gt;
&lt;br&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td class="yHabDetText"&gt;
&lt;table valign="top" align="right" border="0" cellpadding="0" cellspacing="0"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td&gt;
&lt;table valign="top" align="right" border="0" cellpadding="0" cellspacing="0"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td valign="top"&gt;
&lt;img src="http://www.hurriyet.com.tr/_newsimages/5134197.jpg" alt="Google'ın reklam gelirleri tehlikede" align="right" border="0" hspace="2" vspace="6"&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;!--media başlangıç--&gt;
&lt;!-- media--&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;b&gt;Yavaşlayan Amerikan ekonomisi, sonunda ülkenin internet devi Google'ın da canını
yakmaya başladı.&lt;/b&gt;
&lt;br&gt;
&lt;br&gt;
&lt;p&gt;
Google'ın hisse değerleri ülkenin ekonomik durumundan olumsuz yönde etkilenmeye başladı.
Yavaş büyüyen Amerikan ekonomisinden zarar gören Google'ın hisse değerleri düşüyor.
&lt;/p&gt;
&lt;p&gt;
Comscore*'un araştırmasına göre Google'ın reklam gelirleri geçen seneneye göre 1 milyon
Dolar düşerek 532 milyon Dolar olurken, geçtiğimiz günlerde şirketin hisse değeri
de yüzde 4,57 oranında düşerek 464 olar oldu. 
&lt;/p&gt;
&lt;p&gt;
2007 yılının Kasım ayı başlarında şirketin hisse değeri 747,24 Doları bulmuştu ve
2008'in başında düşüş başladı. Google yeni seneye 700 Dolarlık hisse değeriyle girmişti.
&lt;/p&gt;
&lt;p&gt;
Google'a bir şeyler aramak için giren insanların sayısı araştırmalara göre artmış
görünse de, reklam tıklamalarında aynı artış görülmüyor ve bilindiği gibi reklam gelirleri
Google'nın ana gelirlerinden biri... 
&lt;/p&gt;
&lt;p&gt;
Görünen o ki, yavaşlayan Amerikan ekonomisi Google'a zarar vermeye devam edecek.
&lt;/p&gt;
&lt;p&gt;
(*) İnternet pazarlama araştırmaları yapan bir şirket.
&lt;/p&gt;
&lt;p&gt;
&lt;font color="#808080" size="2"&gt;Haber Kaynağı : hurriyet.com.tr&lt;/font&gt;
&lt;br&gt;
&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img width="0" height="0" src="http://www.enginterzi.com.tr/aggbug.ashx?id=c25900c2-e05b-4ec3-80ae-96c329372131" /&gt;</description>
      <category>Teknoloji</category>
    </item>
    <item>
      <trackback:ping>http://www.enginterzi.com.tr/Trackback.aspx?guid=791e48b0-0453-4a8d-b493-8db6ac857682</trackback:ping>
      <pingback:server>http://www.enginterzi.com.tr/pingback.aspx</pingback:server>
      <pingback:target>http://www.enginterzi.com.tr/PermaLink,guid,791e48b0-0453-4a8d-b493-8db6ac857682.aspx</pingback:target>
      <dc:creator>Your DisplayName here!</dc:creator>
      <body xmlns="http://www.w3.org/1999/xhtml">Çoğu sitede blog 'da karşılaştığımız sayfalama
tekniğinde konu başlığı ile aynı olan sayfalrın nasıl yapıldığını düşünmüşüzdür.<br />
Acaba bunlar tek tek sayfa olarakmı kaydediliyor ve nasıl yapılıyor. İşte tam bu sıra
.Net teknolojisinin bize sunduğu nimetlerden yararlanmaya geldi.<br />
ASP.NET ile bu tarz sayfaları hazırlamamız okadar kolayki şimdi aşağıda antalacağım
yöntem ile sizde şaşıracaksınız.<br /><br />
Peki yazıdan önce bu tarz sayfalar benim ne işime yaracak diye düşünürseniz 
tabiki herşeyden önce sitenizin arama motorlarında iyi bir yerde indexlenmesinin sağlanmasıdır.<br />
Arama motorları sayfalarımızı indekslerken bizim adlandırdığımız şekilde kayıtları
tutacak. Buda daha sonra yapılan arama sorgularında daha başarılı sonuçlarla, daha
öncelikli olarak listelenmesini sağlayacaktır.<br /><br /><b><font color="#ff0000">Not: Arama sonuçlarında her zaman sayfa url’leri başlık ve
içeriğe göre daha fazla öncelik sağlar.<br /><br /></font></b>Öncelikle veri tabanımızı ve kodlarımızı oluşturmaya başlayalım.<br /><br /><p></p><img src="http://www.enginterzi.com.tr/content/binary/db01.jpg" border="0" /><br /><br />
Örnek için bir kaç veri ekleyelim.<br /><img src="http://www.enginterzi.com.tr/content/binary/db02.jpg" border="0" /><br /><br />
Veritabanımızı oluşturduktan sonra projemize bir adet global.asax dosyası ekliyoruz.
Daha sonra “items” isminde bir klasör ve içerisinede default.aspx isminde bir sayfa
ekliyoruz. Listelemek içinde ana root’taki Default.aspx sayfasını kullanacağız.Veri
tabanımız için ASP.NET Folder menüsünden APP_Data klasörü açıyoruz ve *.mdb mizi buraya
koyuyoruz birde dabase imize bağlnamakta bize kolaylık sağlayan yine APS.NET Folder
ı olan APP_Code klasörü koyuruz ve buna sağtıklayıp dataset ekleyip veri tabani bağlantılarımızı
yapıyoruz.<br /><br />
Sırasıyla Global.asax, Default.aspx ve /items/default.aspx kodlarını yazmaya başlayalım.<br /><br /><b><font color="#800080">Global.asx dosyamız </font></b><br /><pre><span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;%@
Application Language=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"C#"</span> %&gt;<br /><br />
&lt;script runat=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"server"</span>&gt;<br /><br /><br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">void</span> Application_BeginRequest(<span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">object</span> sender,
EventArgs e)<br />
{<br /><span style="color: Green; background-color: transparent; font-family: Courier New; font-size: 11px;">//
İlkeönce işelmleri yapmak istediğimiz sayfanın url bilgisini almalıyız.</span><span style="color: Green; background-color: transparent; font-family: Courier New; font-size: 11px;">//
Örnek olarak /items/Firat-Aydinus-Canımızı-Yakti.html gibi.</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">string</span> filePath <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> Request.RawUrl;<br /><br /><span style="color: Green; background-color: transparent; font-family: Courier New; font-size: 11px;">//
IndexOf fonksiyonu ile almış olduğumuz url içinde items klasörünü arayalım.</span><span style="color: Green; background-color: transparent; font-family: Courier New; font-size: 11px;">//
Böle bir kontrol yapmadığımız takdirde tüm dosyalarda rewriter işlemi yapmak isteyecektir.</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">if</span> (filePath.IndexOf(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"/items/"</span>)
!<span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> -1)<br />
{<br /><span style="color: Green; background-color: transparent; font-family: Courier New; font-size: 11px;">//
Bu kontrolude geçtikten uzantıyı belitritiyoruz burda ben html olarak belirtim.</span><span style="color: Green; background-color: transparent; font-family: Courier New; font-size: 11px;">//
Eğer istersen bu uzantıyı istediğimiz gibi değiştirebiliriz.</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">if</span> (System.IO.Path.GetExtension(filePath)
== <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">".html"</span>)<br />
{<br /><span style="color: Green; background-color: transparent; font-family: Courier New; font-size: 11px;">//
Bu kontrolüde aştıktansonra verimizi çekebilmemiz için gerekli olan ID yayya ulaşmamız
gerekli.</span><span style="color: Green; background-color: transparent; font-family: Courier New; font-size: 11px;">//Split
fonksiyonu ile url lemizi dizi haline çevirip ID değerine ulaşmamız gerekli.</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">string</span>[]
spltUrl <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> System.IO.Path.GetFileName(filePath).Split('<span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">-</span>');<br /><br /><span style="color: Green; background-color: transparent; font-family: Courier New; font-size: 11px;">//
Aşağıdaki işlemler ilk önce gerçek sayfa yolunu, daha sonraki parametre ile ID değerini
gönderiyoruz.</span> Context.RewritePath(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"~/items/default.aspx"</span>, <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">""</span>, <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"id="</span><span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">+</span> spltUrl[0], <span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">true</span>);<br />
}<br />
}<br />
}<br /><br />
&lt;/script&gt;</span></pre><p><font color="#800080"><b>Default.aspx</b></font></p><br /><pre><span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;%@
Page Language=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"C#"</span> AutoEventWireup=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"true"</span> CodeFile=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"Default.aspx.cs"</span> Inherits=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"_Default"</span> %&gt;<br /><br />
&lt;!DOCTYPE html PUBLIC <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"-//W3C//DTD
XHTML 1.0 Transitional//EN"</span><span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"</span>&gt;<br /><br />
&lt;html xmlns=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"http://www.w3.org/1999/xhtml"</span> &gt;<br />
&lt;head runat=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"server"</span>&gt;<br />
&lt;title&gt;Untitled Page&lt;/title&gt;<br />
&lt;/head&gt;<br />
&lt;body&gt;<br />
&lt;form id=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"form1"</span> runat=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"server"</span>&gt;<br />
&lt;div&gt;<br />
&lt;asp:Repeater ID=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"Repeater1"</span> runat=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"server"</span> DataSourceID=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"ObjectDataSource1"</span>&gt;<br />
&lt;ItemTemplate&gt;<br />
&lt;li&gt;&lt;asp:HyperLink ID=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"HyperLink1"</span> runat=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"server"</span><br />
NavigateUrl='&lt;%# ReWriteURL(Eval(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"idItem"</span>).ToString(),
Eval(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"itemHead"</span>).ToString())
%&gt;'&gt;&lt;%#Eval(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"itemHead"</span>)%&gt;&lt;/asp:HyperLink&gt;&lt;/li&gt;<br />
&lt;/ItemTemplate&gt;<br />
&lt;/asp:Repeater&gt;<br />
&lt;asp:ObjectDataSource ID=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"ObjectDataSource1"</span> runat=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"server"</span> SelectMethod=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"GetData"</span> TypeName=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"DataSet1TableAdapters.tblItemsTableAdapter"</span> DeleteMethod=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"Delete"</span><br />
InsertMethod=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"Insert"</span> OldValuesParameterFormatString=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"original_{0}"</span> UpdateMethod=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"Update"</span>&gt;<br />
&lt;DeleteParameters&gt;<br />
&lt;asp:Parameter Name=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"Original_idItem"</span> Type=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"Int32"</span> /&gt;<br />
&lt;/DeleteParameters&gt;<br />
&lt;UpdateParameters&gt;<br />
&lt;asp:Parameter Name=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"itemHead"</span> Type=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"String"</span> /&gt;<br />
&lt;asp:Parameter Name=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"itemText"</span> Type=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"String"</span> /&gt;<br />
&lt;asp:Parameter Name=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"Original_idItem"</span> Type=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"Int32"</span> /&gt;<br />
&lt;/UpdateParameters&gt;<br />
&lt;InsertParameters&gt;<br />
&lt;asp:Parameter Name=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"itemHead"</span> Type=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"String"</span> /&gt;<br />
&lt;asp:Parameter Name=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"itemText"</span> Type=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"String"</span> /&gt;<br />
&lt;/InsertParameters&gt;<br />
&lt;/asp:ObjectDataSource&gt;<br /><br />
&lt;/div&gt;<br />
&lt;/form&gt;<br />
&lt;/body&gt;<br />
&lt;/html&gt;<br /></span><br /></pre><p><br /></p>
Default.aspx.cs<br /><br /><pre><span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px;"><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">using</span> System;<br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">using</span> System.Data;<br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">using</span> System.Configuration;<br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">using</span> System.Web;<br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">using</span> System.Web.Security;<br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">using</span> System.Web.UI;<br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">using</span> System.Web.UI.WebControls;<br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">using</span> System.Web.UI.WebControls.WebParts;<br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">using</span> System.Web.UI.HtmlControls;<br /><br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">public</span> partial <span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">class</span> _Default
: System.Web.UI.Page 
<br />
{<br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">protected</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">void</span> Page_Load(<span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">object</span> sender,
EventArgs e)<br />
{<br /><br />
}<br /><br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">public</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">string</span> ReWriteURL(<span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">string</span> _id, <span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">string</span> _head)<br />
{<br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">string</span> _strTemp <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">string</span>.Empty;<br /><br /><span style="color: Green; background-color: transparent; font-family: Courier New; font-size: 11px;">//Bu
fonksiyon ile kayıtlardan gelen başlık içerisinde bulunan</span><span style="color: Green; background-color: transparent; font-family: Courier New; font-size: 11px;">//
ve geçerli olmayan karaterleri tarayıcıların tanıya bilmesi </span><span style="color: Green; background-color: transparent; font-family: Courier New; font-size: 11px;">//
url lerimizin daha anlamlı hale gelmesi için gerekli replace </span><span style="color: Green; background-color: transparent; font-family: Courier New; font-size: 11px;">//
işlemlerini yapacaktır.</span> _strTemp <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> _head.ToLower();<br /><br />
_strTemp <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> _strTemp.Replace(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"-"</span>, <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">""</span>);<br />
_strTemp <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> _strTemp.Replace(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"
"</span>, <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"-"</span>);<br />
_strTemp <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> _strTemp.Replace(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"ç"</span>, <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"c"</span>);<br />
_strTemp <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> _strTemp.Replace(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"ğ"</span>, <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"g"</span>);<br />
_strTemp <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> _strTemp.Replace(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"ı"</span>, <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"i"</span>);<br />
_strTemp <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> _strTemp.Replace(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"ö"</span>, <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"o"</span>);<br />
_strTemp <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> _strTemp.Replace(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"ş"</span>, <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"s"</span>);<br />
_strTemp <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> _strTemp.Replace(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"ü"</span>, <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"u"</span>);<br />
_strTemp <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> _strTemp.Replace(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"\""</span>, <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">""</span>);<br />
_strTemp <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> _strTemp.Replace(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"/"</span>, <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">""</span>);<br />
_strTemp <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> _strTemp.Replace(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"("</span>, <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">""</span>);<br />
_strTemp <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> _strTemp.Replace(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">")"</span>, <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">""</span>);<br />
_strTemp <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> _strTemp.Replace(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"{"</span>, <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">""</span>);<br />
_strTemp <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> _strTemp.Replace(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"}"</span>, <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">""</span>);<br />
_strTemp <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> _strTemp.Replace(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"%"</span>, <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">""</span>);<br />
_strTemp <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> _strTemp.Replace(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"&amp;"</span>, <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">""</span>);<br />
_strTemp <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> _strTemp.Replace(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"+"</span>, <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">""</span>);<br />
_strTemp <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> _strTemp.Replace(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"."</span>, <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"-"</span>);<br />
_strTemp <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> _strTemp.Replace(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"?"</span>, <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">""</span>);<br />
_strTemp <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> _strTemp.Replace(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">","</span>, <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">""</span>);<br /><span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;">return</span><span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"items/"</span><span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">+</span> _id <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">+</span><span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"-"</span><span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">+</span> _strTemp <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">+</span><span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">".html"</span>;<br />
}<br /><br />
}<br /></span></pre><br /><br />
items/default.aspx<br /><br /><pre><span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px;">&lt;%@
Page Language=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"C#"</span> AutoEventWireup=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"true"</span> CodeFile=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"Default.aspx.cs"</span> Inherits=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"items_Default"</span> %&gt;<br /><br />
&lt;!DOCTYPE html PUBLIC <span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"-//W3C//DTD
XHTML 1.0 Transitional//EN"</span><span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"</span>&gt;<br /><br />
&lt;html xmlns=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"http://www.w3.org/1999/xhtml"</span> &gt;<br />
&lt;head runat=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"server"</span>&gt;<br />
&lt;title&gt;Untitled Page&lt;/title&gt;<br />
&lt;/head&gt;<br />
&lt;body&gt;<br />
&lt;form id=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"form1"</span> runat=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"server"</span>&gt;<br />
&lt;div&gt;<br />
&lt;asp:Repeater ID=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"Repeater1"</span> runat=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"server"</span> DataSourceID=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"ObjectDataSource1"</span>&gt;<br />
&lt;ItemTemplate&gt;<br />
Item ID <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> &lt;%#Eval(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"idItem"</span>)%&gt;&lt;br
/&gt;<br />
&lt;br /&gt;<br />
Item Head <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> &lt;%#Eval(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"itemHead"</span>)%&gt;&lt;br
/&gt;<br />
&lt;br /&gt;<br />
Item Detail <span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;">=</span> &lt;%#Eval(<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"itemText"</span>)%&gt;&lt;br
/&gt;<br />
&lt;br /&gt;<br />
&lt;/ItemTemplate&gt;<br />
&lt;/asp:Repeater&gt;<br />
&lt;asp:ObjectDataSource ID=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"ObjectDataSource1"</span> runat=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"server"</span> DeleteMethod=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"Delete"</span> InsertMethod=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"Insert"</span> OldValuesParameterFormatString=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"original_{0}"</span> SelectMethod=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"GetDataBy"</span> TypeName=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"DataSet1TableAdapters.tblItemsTableAdapter"</span> UpdateMethod=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"Update"</span>&gt;<br />
&lt;DeleteParameters&gt;<br />
&lt;asp:Parameter Name=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"Original_idItem"</span> Type=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"Int32"</span> /&gt;<br />
&lt;/DeleteParameters&gt;<br />
&lt;UpdateParameters&gt;<br />
&lt;asp:Parameter Name=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"itemHead"</span> Type=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"String"</span> /&gt;<br />
&lt;asp:Parameter Name=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"itemText"</span> Type=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"String"</span> /&gt;<br />
&lt;asp:Parameter Name=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"Original_idItem"</span> Type=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"Int32"</span> /&gt;<br />
&lt;/UpdateParameters&gt;<br />
&lt;SelectParameters&gt;<br />
&lt;asp:QueryStringParameter Name=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"idItem"</span> QueryStringField=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"id"</span> Type=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"Int32"</span> /&gt;<br />
&lt;/SelectParameters&gt;<br />
&lt;InsertParameters&gt;<br />
&lt;asp:Parameter Name=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"itemHead"</span> Type=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"String"</span> /&gt;<br />
&lt;asp:Parameter Name=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"itemText"</span> Type=<span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;">"String"</span> /&gt;<br />
&lt;/InsertParameters&gt;<br />
&lt;/asp:ObjectDataSource&gt;<br /><br />
&lt;/div&gt;<br />
&lt;/form&gt;<br />
&lt;/body&gt;<br />
&lt;/html&gt;<br /></span></pre><br />
Şimdi sırasıyla ekran görüntülerimizi inceleyiniz.<br /><br /><img src="http://www.enginterzi.com.tr/content/binary/rewrite01.jpg" border="0" /><br /><br /><br /><img src="http://www.enginterzi.com.tr/content/binary/rewrite02.jpg" border="0" /><br /><br />
Anlatmış olduğum konuyu dan birşey anlmadığınızı düşünürseniz aşağıda örnek dosyalarıda
koydum indirip sisteminizde deneye bilirsiniz.<br />
Burada anlatıklarımı eğer ilk defa bu işe başlıyorsanız anlamaya bilirsiniz.<br /><br /><a href="http://www.enginterzi.com.tr/content/binary/rewriterPath.rar">Bu Dosyayı
İndirmek İçin Tıklayınız (rewriterPath.rar (16,86 KB))</a><br /><br /><address><b><font color="#000080" face="Verdana" size="4">Engin TERZİ</font></b></address><img width="0" height="0" src="http://www.enginterzi.com.tr/aggbug.ashx?id=791e48b0-0453-4a8d-b493-8db6ac857682" /></body>
      <title>Global.asax ile ReWriter </title>
      <guid isPermaLink="false">http://www.enginterzi.com.tr/PermaLink,guid,791e48b0-0453-4a8d-b493-8db6ac857682.aspx</guid>
      <link>http://www.enginterzi.com.tr/Globalasax+%c4%b0le+ReWriter.aspx</link>
      <pubDate>Wed, 05 Mar 2008 13:43:57 GMT</pubDate>
      <description>Çoğu sitede blog 'da karşılaştığımız sayfalama tekniğinde konu başlığı ile aynı olan sayfalrın nasıl yapıldığını düşünmüşüzdür.&lt;br&gt;
Acaba bunlar tek tek sayfa olarakmı kaydediliyor ve nasıl yapılıyor. İşte tam bu sıra
.Net teknolojisinin bize sunduğu nimetlerden yararlanmaya geldi.&lt;br&gt;
ASP.NET ile bu tarz sayfaları hazırlamamız okadar kolayki şimdi aşağıda antalacağım
yöntem ile sizde şaşıracaksınız.&lt;br&gt;
&lt;br&gt;
Peki yazıdan önce bu tarz sayfalar benim ne işime yaracak diye düşünürseniz&amp;nbsp;
tabiki herşeyden önce sitenizin arama motorlarında iyi bir yerde indexlenmesinin sağlanmasıdır.&lt;br&gt;
Arama motorları sayfalarımızı indekslerken bizim adlandırdığımız şekilde kayıtları
tutacak. Buda daha sonra yapılan arama sorgularında daha başarılı sonuçlarla, daha
öncelikli olarak listelenmesini sağlayacaktır.&lt;br&gt;
&lt;br&gt;
&lt;b&gt;&lt;font color="#ff0000"&gt;Not: Arama sonuçlarında her zaman sayfa url’leri başlık ve
içeriğe göre daha fazla öncelik sağlar.&lt;br&gt;
&lt;br&gt;
&lt;/font&gt;&lt;/b&gt;Öncelikle veri tabanımızı ve kodlarımızı oluşturmaya başlayalım.&lt;br&gt;
&lt;br&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;img src="http://www.enginterzi.com.tr/content/binary/db01.jpg" border="0"&gt;
&lt;br&gt;
&lt;br&gt;
Örnek için bir kaç veri ekleyelim.&lt;br&gt;
&lt;img src="http://www.enginterzi.com.tr/content/binary/db02.jpg" border="0"&gt;
&lt;br&gt;
&lt;br&gt;
Veritabanımızı oluşturduktan sonra projemize bir adet global.asax dosyası ekliyoruz.
Daha sonra “items” isminde bir klasör ve içerisinede default.aspx isminde bir sayfa
ekliyoruz. Listelemek içinde ana root’taki Default.aspx sayfasını kullanacağız.Veri
tabanımız için ASP.NET Folder menüsünden APP_Data klasörü açıyoruz ve *.mdb mizi buraya
koyuyoruz birde dabase imize bağlnamakta bize kolaylık sağlayan yine APS.NET Folder
ı olan APP_Code klasörü koyuruz ve buna sağtıklayıp dataset ekleyip veri tabani bağlantılarımızı
yapıyoruz.&lt;br&gt;
&lt;br&gt;
Sırasıyla Global.asax, Default.aspx ve /items/default.aspx kodlarını yazmaya başlayalım.&lt;br&gt;
&lt;br&gt;
&lt;b&gt;&lt;font color="#800080"&gt;Global.asx dosyamız &lt;/font&gt;&lt;/b&gt;
&lt;br&gt;
&lt;pre&gt;&lt;span style="color: Black; background-color: transparent; font-family: Courier New; font-size: 11px;"&gt;&amp;lt;%@
Application Language=&lt;span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;"&gt;"C#"&lt;/span&gt; %&amp;gt;&lt;br&gt;
&lt;br&gt;
&amp;lt;script runat=&lt;span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;"&gt;"server"&lt;/span&gt;&amp;gt;&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
&lt;span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;"&gt;void&lt;/span&gt; Application_BeginRequest(&lt;span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;"&gt;object&lt;/span&gt; sender,
EventArgs e)&lt;br&gt;
{&lt;br&gt;
&lt;span style="color: Green; background-color: transparent; font-family: Courier New; font-size: 11px;"&gt;//
İlkeönce işelmleri yapmak istediğimiz sayfanın url bilgisini almalıyız.&lt;/span&gt; &lt;span style="color: Green; background-color: transparent; font-family: Courier New; font-size: 11px;"&gt;//
Örnek olarak /items/Firat-Aydinus-Canımızı-Yakti.html gibi.&lt;/span&gt; &lt;span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;"&gt;string&lt;/span&gt; filePath &lt;span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;"&gt;=&lt;/span&gt; Request.RawUrl;&lt;br&gt;
&lt;br&gt;
&lt;span style="color: Green; background-color: transparent; font-family: Courier New; font-size: 11px;"&gt;//
IndexOf fonksiyonu ile almış olduğumuz url içinde items klasörünü arayalım.&lt;/span&gt; &lt;span style="color: Green; background-color: transparent; font-family: Courier New; font-size: 11px;"&gt;//
Böle bir kontrol yapmadığımız takdirde tüm dosyalarda rewriter işlemi yapmak isteyecektir.&lt;/span&gt; &lt;span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;"&gt;if&lt;/span&gt; (filePath.IndexOf(&lt;span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;"&gt;"/items/"&lt;/span&gt;)
!&lt;span style="color: Red; background-color: transparent; font-family: Courier New; font-size: 11px;"&gt;=&lt;/span&gt; -1)&lt;br&gt;
{&lt;br&gt;
&lt;span style="color: Green; background-color: transparent; font-family: Courier New; font-size: 11px;"&gt;//
Bu kontrolude geçtikten uzantıyı belitritiyoruz burda ben html olarak belirtim.&lt;/span&gt; &lt;span style="color: Green; background-color: transparent; font-family: Courier New; font-size: 11px;"&gt;//
Eğer istersen bu uzantıyı istediğimiz gibi değiştirebiliriz.&lt;/span&gt; &lt;span style="color: Blue; background-color: transparent; font-family: Courier New; font-size: 11px;"&gt;if&lt;/span&gt; (System.IO.Path.GetExtension(filePath)
== &lt;span style="color: rgb(102, 102, 102); background-color: rgb(228, 228, 228); font-family: Courier New; font-size: 11px;"&gt;".html"&lt;/span&gt;)&lt;br&gt;
{&lt;br&gt;
&lt;span style="color: Green; background-color: tran