Ajax ile .txt Dosyasından Veri Çekme

Mart 19, 2009

Uygulamada önemini vurgulamak istediğim nokta Ajax teknolojisiyle herhangi bir kaynaktan daha hızlı ve kolay bir şekilde veri çekebiliriz. Aşağıda sizlerle paylaştığım basit uygulamada .txt uzantılı bir dosya içindeki verilere Ajax teknolojisini kullanarak ulaştık. Verileri ekranda görüntülemek için hazır gridlere ihtiyaç duymadık. Kullanmış olduğumuz divlerle kendi gridimizi kendimiz oluşturduk. Bu da uygulamanın boyutunu küçültmemize ve daha hızlı çalışmamıza olanak sağladı. Paylaşmış olduğum örnek uygulamada nasıl kullanmanız ve nelere dikkat etmeniz gerektiğini anlattım.

Örnek Uygulama

<head runat=”server”>
<title></title>
<%–CSS tanımlamamızı yapıyoruz.–%>
<style type=”text/css”>
.cl, .cl2
{
float: left;
min-height: 20px;
padding: 3px;
width: 180px;
}
.cl
{
background-color: red;
}
.cl2
{
background-color: yellow;
}
.clear
{
clear: both;
float: none;
height: 0;
}
#myGrid
{
font-size: 10pt;
}
#ortala
{
width: 1024px;
margin-right: auto;
margin-left: auto;
}
</style>
<%–AJAX kullanarak txt içindeki datayı çekiyoruz.–%>

<script language=”javascript” type=”text/javascript”>
function ajaxer() {
var xmlHttp;
try { xmlHttp = new XMLHttpRequest(); }
catch (e) {
try { xmlHttp = new ActiveXObject(“Msxml2.XMLHTTP”); }
catch (e) {
try { xmlHttp = new ActiveXObject(“Microsoft.XMLHTTP”); }
catch (e) { return false; }
}
}

xmlHttp.onreadystatechange = function() {
if (xmlHttp.readyState == 4 || xmlHttp.readyState == “complete”) {
if (xmlHttp.status == 200) {

var x;

//eval methodunu kullanarak satirlar değişkeninin içindekileri kod parçasıymış gibi çalıştırıyoruz.
var satirlar = eval(xmlHttp.responseText);

for (x in satirlar) {

var xyz = eval(satirlar[x]);

//Çektiğimiz verileri div kullanarak grid oluşturup satırlara yazıyoruz.
document.getElementById(‘myGrid’).innerHTML += ” <div class=’row’>”;

var i = 0;
//Çektiğimiz verileri oluşturduğumuz gridde sütunlara ayırıyoruz.
for (y in xyz) {
//Sütunların farklı renklerde olması için sorgu oluşturarak
//artarda olan kolonların farklı renkte olmasını sağlıyoruz.

i++;
if (i % 2 == 0) {

document.getElementById(‘myGrid’).innerHTML += “<div class=’cl’>” + xyz[y] + “</div>”;
}
else {
document.getElementById(‘myGrid’).innerHTML += “<div class=’cl2′>” + xyz[y] + “</div>”;
}
}

document.getElementById(‘myGrid’).innerHTML += “<div class=’clear’></div></div>”;
}
}
}
}
//data.txt dosyasını çağrıyoruz.
xmlHttp.open(“GET”, “data.txt”);
xmlHttp.send(null);
}
</script>

</head>
<body onload=“javascript:ajaxer();>
<form id=”form1″ runat=”server”>
<div id=”ortala”>
<div id=”myGrid”>
</div>
</div>
</form>
</body>

Uygulamayı buradan indirebilirsiniz.

Add to Technorati Favorites


C# XML’e Veri Yazma Örneği

Ekim 23, 2008

Öncelikle default.aspx sayfamızda şekildeki gibi 3 tane textbox ve 1 tane buton oluşturuyoruz.


Sıradaki işlemimiz bir sınıf oluşturmak. Bunun için Add-New Item yolunu izleyerek karşımıza çıkan pencereden class seçeneğini seçiyoruz. Oluşturduğumuz sınıfa “kisi” adını veriyoruz ve sınıfımızın içine aşağıdaki kodları yazıyoruz.

//constructor
public kisi()
{
//nesne ilk oluştuğunda gerçekleştireceği hareket.
}
//sınıfımızın içinde değişkenlerimizi tanımlıyoruz.
public kisi(string ad, string soyad, string telefon)
{

Ad = ad;
Soyad = soyad;
Telefon = telefon;
}

//değişkenimizi field olarak görmemizi sağlar.
private string m_ad;

//değişkenimizi property olarak görmemizi sağlar.
public string Ad
{
get {return m_ad;}
set {m_ad = value;}
}

private string m_soyad;
public string Soyad
{
get { return m_soyad; }
set { m_soyad = value; }
}

private string m_telefon;
public string Telefon
{
get { return m_telefon; }
set { m_telefon = value; }
}

//veriyi xml’e kaydetme methodunu oluşturuyoruz.
public void xmlekaydet()
{
//yeni bir XmlTextWriter nesnesi oluşturarak bu nesne içerisinde
//xml’imizi nereye oluşturacağımızı belirtiyoruz.

XmlTextWriter xmlDocument = new XmlTextWriter(@”c:\kayit.xml”, System.Text.UTF8Encoding.UTF8);

//verimizi xml dosyasına yazmaya başlıyoruz.
xmlDocument.WriteStartDocument();
xmlDocument.WriteStartElement(“kisi”);
xmlDocument.WriteAttributeString(“ad”, m_ad);
xmlDocument.WriteAttributeString(“soyad”, m_soyad);
xmlDocument.WriteAttributeString(“telefon”, m_telefon);
xmlDocument.WriteEndElement();
xmlDocument.WriteEndDocument();

//yazma işlemini sonlandırıyoruz.
xmlDocument.Close();
}

Sınfımızın içine kodları yazdıktan sonra Default.aspx’te oluşturduğumuz butonun Click özelliğine aşağıdaki kodları yazıyoruz.

//yeni bir kisi nesnesi oluşturarak
//textbox’ların bu değişken içinde yer almasını sağlıyoruz.

kisi k = new kisi(TextBox1.Text,TextBox2.Text,TextBox3.Text);

//kaydetme methodumuzu çağrıyoruz.
k.xmlekaydet();

//kayıt işleminin tamamlandığını ekranda gösterecek.
Response.Write(“Kayıt Tamamlandı.”);

İşlemimiz bu kadar. Artık oluşturduğunuz XML dosyalarına veri yazdırabilirsiniz.

Aşağıdaki linkten uygulamayı indirebilirsiniz.
http://uploaded.to/?id=rjzq4e

Add to Technorati Favorites