public class HavaDurumu
{
public string Min;
public string Max;
public string Name;
public string Image;
}
[WebMethod]
public HavaDurumu f_HavaDurumuJson(string _sSehirler)
{
// TR873,TR2342 gibi bir string gelecek.
string[] _ArrSehirler = _sSehirler.Split(new[] { ',' });
string sSehirSonucu = "";
string name = "", min = "", max = "", image_code = "";
// Settings içinde havaDurumu = http://www.bugun.com.tr/files/hava.xml olmalı
XmlTextReader xmlReader = new XmlTextReader(Properties.Settings.Default.havaDurumu);
XmlDocument xmlDocument = new XmlDocument();
xmlDocument.Load(xmlReader);
XmlNode topNode = xmlDocument.DocumentElement;
foreach (string sehir in _ArrSehirler)
{
XmlNode hava = topNode.SelectSingleNode("record[code='" + sehir + "']");
name = hava.ChildNodes[1].InnerText;
min = hava.ChildNodes[4].InnerText;
max = hava.ChildNodes[5].InnerText;
image_code = hava.ChildNodes[6].InnerText;
sSehirSonucu += "{name:'" + name + "', min:" + min + ", max:" + max + ", image_code:'" + image_code + "'},";
}
return new HavaDurumu()
{
Name = name,
Image = image_code,
Min = min,
Max = max
};
}
function f_HavaDurumuJson(_sehir) {
alert("sehir sorgu: " + _sehir);
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: 'WS/wsGenel.asmx/f_HavaDurumuJson',
data: "{_sSehirler:'" + _sehir + "'}",
dataType: "json",
success: function(data) {
alert(data.d.Name);
alert(data.d.Min);
alert(data.d.Max);
alert(data.d.Image);
$.each(data.d, function(ozellik, deger) {
alert(ozellik + " - " + deger);
});
}
});
}
f_HavaDurumuJson('TR2342');
Bir sınıfın dizi tipinde dönen değerini almak
public class HavaDurumu
{
public string Min;
public string Max;
public string Name;
public string Image;
}
[WebMethod]
public HavaDurumu[] f_HavaDurumuJson(string _sSehirler)
{
// TR873,TR2342 gibi bir string gelecek.
string[] _ArrSehirler = _sSehirler.Split(new[] { ',' });
HavaDurumu[] sonuc = new HavaDurumu[_ArrSehirler.Length];
string sSehirSonucu = "";
string name = "", min = "", max = "", image_code = "";
// Settings içinde havaDurumu = http://www.bugun.com.tr/files/hava.xml olmalı
XmlTextReader xmlReader = new XmlTextReader(Properties.Settings.Default.havaDurumu);
XmlDocument xmlDocument = new XmlDocument();
xmlDocument.Load(xmlReader);
XmlNode topNode = xmlDocument.DocumentElement;
for (int i = 0; i < _ArrSehirler.Length; i++)
{
string sehir = _ArrSehirler[i];
XmlNode hava = topNode.SelectSingleNode("record[code='" + sehir + "']");
name = hava.ChildNodes[1].InnerText;
min = hava.ChildNodes[4].InnerText;
max = hava.ChildNodes[5].InnerText;
image_code = hava.ChildNodes[6].InnerText;
sSehirSonucu += "{name:'" + name + "', min:" + min + ", max:" + max + ", image_code:'" + image_code + "'},";
sonuc[i] = new HavaDurumu()
{
Name = name,
Image = image_code,
Min = min,
Max = max
};
}
return sonuc;
}
function f_HavaDurumuJson(_sehir) {
alert("sehir sorgu: " + _sehir);
$.ajax({
type: "POST",
contentType: "application/json; charset=utf-8",
url: 'WS/wsGenel.asmx/f_HavaDurumuJson',
data: "{_sSehirler:'" + _sehir + "'}",
dataType: "json",
success: function(data) {
alert("Dizinin uzunluğu: " + data.d.length);
alert("0. elemanın Name değeri: "+ data.d[0].Name);
$.each(data.d, function(i, eleman) {
alert(eleman.Name + " | " + eleman.Min + " | " + eleman.Max + " | " + eleman.Image);
$.each(eleman, function(key, value) {
alert(key + " - " + value);
});
});
}
});
}
f_HavaDurumuJson('TR2342,TR4801');
Kaynak:
http://www.eburhan.com/jquery-ve-json-islemleri/
http://prettycode.org/2009/04/07/using-jquery-with-aspnet-web-services-and-json/
Hiç yorum yok:
Yorum Gönder