Bu site emekli olmuştur. Arşiv amaçlı olarak BT AKADEMİ sponsorluğunda yayın hayatına devam etmektedir.




C#nedir?com
 
YAZAR HAKKINDA
Tolga Güler
Tolga Güler
http://www.csharpnedir.com/
İletişme geçmek için tıklayın.
6 Makalesi yayınlanmakta.
Yazar hakkında detaylı bilgi için tıklayın.
Yayınlanan diğer makaleleri için tıklayın.
İlgili etiketler:  XML / Web Serv. Tolga Güler
 
YAZI HAKKINDA
Türü : Makale
Serbest Köşede C#nedir?com üyelerinin hazırladıkları yazılar yayınlanır. Bu yazılar editör incelemesine girmeden yayınlanır.
Seviyesi : Başlangıç
Kategori : XML / Web Serv.
Yayınlanma Tarihi : 25.9.2003
Okunma Sayısı : 32422
Yorum Sayısı : 1     yorum yaz
Site İçi AramaSİTE İÇİ ARAMA
Üye Girişini AçÜye GİRİŞİ
Üye girişi için tıklayın.
Kullanıcı Adı
Şifre
 
Beni her zaman hatırla
Bir hafta boyunca kullanıcı bilgilerinizi kullanıcı çıkışı yapana kadar hatırlar. (Paylaşılan bilgisayarlarda önerilmez.)
 
Şifremi / Kullanıcı Adımı unuttum.
 
.net TV RSS Serbest KÖŞE (?)
Serbest Köşede C#nedir?com üyelerinin hazırladıkları yazılar yayınlanır. Bu yazılar editör incelemesine girmeden yayınlanır.
emre TAŞ
Silindi
emre TAŞ
yazının devamı >
emre TAŞ
silindi
emre TAŞ
yazının devamı >
emre TAŞ
silindi
emre TAŞ
yazının devamı >
emre TAŞ
silindi
emre TAŞ
yazının devamı >
emre TAŞ
silindi
emre TAŞ
yazının devamı >
Makale Gönder Bende Yazmak İstiyorum
.net TV RSSBlogroll
Turhal Temizer
Conda install environment.yml Package 28.3.2024
Turhal Temizer
Mac OS/X Removing CUDA 28.3.2024
Burak Selim Şenyurt
Kurumsal Yazılımcının Oyun Geliştirme ile İmtihanı 28.3.2024
Burak Selim Şenyurt
Matematik ve Oyun Programlama - Missile Command - Final 28.3.2024
  Diğer Herşey
Sponsorlar
BT Akademi
Medya Portakal
Video Hosting Sponsoru
Csharpnedir.com bir Ineta üyesidir
Uzman Abi
Her Yönüyle C# - Sefer Algan
WebClient ile XML Verisinin Gönderilip İşlenmesi
 
Kapat
Sayfayı Yazdır Sık Kullanılanlara Ekle Arkadaşıma Gönder MySpace Del.Ico.Us Digg Facebook Google Mixx Reddit StumbleUpon
Bu örneğimizle, WebClient classı ile bir xml stringini nasıl post edeceğimizi ve post ettiğimiz veriy XmlDocument ile nasıl yükleyeceğimizi öğreneceğiz. Dilerseniz önce WebClient sınıfına kısa bir giriş yapıp daha sonra örnek kodumuzla konuya açıklık getirelim.

WebClient sınıf bir URI (Uniform Resource Identifier) ye veri gönderme ve URI den veri almaya yarayan metotları  içerir. Bu metotlar: DownloadData, DownloadFile, OpenRead, OpenWrite, UploadData, UploadFile, UploadValues dir.

Ben bu yazımda WebClient'ın sadece UploadData metotunu açıklamaya çalışacağım.

Aşağıdaki kodun çalışabilmesi için kodunuza System.Text ve System.Net isim alanlarını eklemeyi unutmayın.

using System.Text;
using System.Net;

Eklemeyi unutmayın.

private void Form1_Load(object sender, System.EventArgs e)

{

string xmlString = "0635587TolgaGuler";
/* WebClient ile göndermek istediğimiz stringi oluşturuyoruz. Tabi bu stringin xml formatında olmasına gerek yok,
ama bizim uygulamamızda stringi yolladığımız sayfa geçerli bir xml yapısı bekliyor. */

string url = "http://localhost/getxmlstring/WebForm1.aspx";
// xsml stringi yollayacağımız adresi string olarak tanımlıyoruz.

WebClient myWebClient = new WebClient();
// WebClient objesini yaratıyoruz.

byte[] data = Encoding.ASCII.GetBytes(xmlString);
//  WebClient metodu yollanacak olan datayı byte olarak parametre alabildiği için stringi byte a çeviriyoruz.

byte[] response = myWebClient.UploadData(url,"POST",data);
/* byte türünden response değişkenini tanımlıyoruz. ve değer olarak da datayı kabul eden sayfanın döndürdüğü byte
türünden değeri atıyoruz. UploadData metotu 3 parametre alır. 1.si datanın yollanacağı string tütünden url değişkeni,
2.si metot  bu POST veya GET  olabilir. 3.sü byte türünden yollanacak veri.

MessageBox.Show(Encoding.ASCII.GetString(response).ToString());

/* byte olan respons u stringe çevirip görüntülüyoruz.

}



Böylece istediğimiz datayı istediğimiz sayfaya nasıl yollayabileceğimiz öğrenmiş olduk. Diğer metotları da MSDN den rahatlıkla öğrenebilirsiniz. Gelelim datamızı kabul eden aspx sayfasına. Bu uygulama kendisine gönderilen xml'i XmlDocument sınıf  Load() metodu ile yükler, düğümlerin(node) değerlerini tek tek değişkenlere atar ve bu değişkenleri internetteki veri tabanına kaydeder.

Yeni bir Asp.Net web projesi yaratın ve adını getxmlstring olarak ayarlayın.

Kodunuzun başına using System.Xml; i eklemeyi unutmayın tabii.

private void Page_Load(object sender, System.EventArgs e)
{

XmlDocument myXml = new XmlDocument();
try
{

myXml.Load(Request.InputStream);
// xml i yüklerken hata olup olmadığını kontrol ediyoruz

}

catch(Exception ex)

{

Response.Write(ex.Message.ToString());
Response.End();
// hata oluşursa yanıt olarak hata mesajını verip uygulamayı sonlandırıyoruz.

}
XmlNode MusteriNo = myXml.SelectSingleNode("/Kayit/MusteriNo");
XmlNode Adi = myXml.SelectSingleNode("/Kayit/Adi");
XmlNode Soyadi = myXml.SelectSingleNode("/Kayit/Soyadi");
// gönderilen xml in her bir nodundaki değerleri XmlNode tipi değişkenlerine atıyoruz.

Response.Write(Kaydet(MusteriNo.InnerXml,Adi.InnerXml,Soyadi.InnerXml).ToString());
// verileri kaydet isimli fonksiyon ile internetteki veri tabanına kaydediyoruz.ve cevap veriyoruz
// Not : Yukarıdaki Kaydet() metodunu siz kendi veritabanınıza göre ayarlamalısınız.


Response.End();

}



Böylece masa üstü programımızdan WebClient sınıfının DataPost metodu ile internetteki veri tabanına kayıt yapmış olduk. Tabi bu işi yapan bir web servisi programlamak bu örnek için daha mantıklı olabilir.

Makale:
WebClient ile XML Verisinin Gönderilip İşlenmesi XML ve Web Servisleri Tolga Güler
  • Yazılan Yorumlar
  • Yorum Yaz
TEM
15
2004
merhabalar, bu uygulamayı kendi bilgisayarimizda calistirdigimizda calismasina ragmen intranet icindeki baska 1 bilgisayardan calistirdigimizda "proxy authentication"(407) hatası veriyor bu sorunu nasıl cozebiliriz....ya da bu neden kaynaklaniyor... iyi calismalar....
Sayfalar : 1 
Yorum yazabilmek için üye girişi yapmalısınız. Üye girişi için tıklayın.
Üye değilseniz Üyel Ol linkine tıklayarak üyeliğinizi hemen başlatabilirisniz.
 
  • Bu Konuda Son 10
  • Eklenen Son 10
  • Bu Konuda Geçmiş 10
Bu Konuda Yazılmış Yazılmış 10 Makale Yükleniyor
Son Eklenen 10 Makale Yükleniyor
Bu Konuda Yazılmış Geçmiş Makaleler Yükleniyor