Asenkron web servis örneği

C# (C Sharp) veya Java ile ilgili konuları buraya yazabilirsiniz.
Cevapla
Kullanıcı avatarı
muratmutlu
Üye
Mesajlar: 57
Kayıt: 02 Tem 2005 02:44
Konum: Antalya

Asenkron web servis örneği

Mesaj gönderen muratmutlu »

Merhaba arkadaşlar.

C# da senkron olarak yazdığım web servisin asenkron olarak çalılşması istendi. Web servis de tek bir fonksiyon var. Bu fonksiyon yapılan bazı işlemler sonucunda geriye string bir ifade döndürüyor. Eğer string boş ise işlem başarılı, değilse hata mesajını döndürüyor. Eliniz de çok kısa bir asenkron web servis örneği varsa paylaşabilşir misiniz ?

Örnek fonksiyon:

Kod: Tümünü seç

[WebMethod]
public string Merhaba(string p1, int p2, string p3)
{
  ...
  ...
  return "Yukarıdaki işlemlere göre değiecek string bir ifade"
}
Yukarıdaki bu örneğin asenkron olarak çalışabilmesi için ne gibi değişiklikler yapılması gerekiyor
Kullanıcı avatarı
unicorn64
Üye
Mesajlar: 919
Kayıt: 04 Nis 2006 08:56
Konum: yine yeniden Ankara ^_^

Re: Asenkron web servis örneği

Mesaj gönderen unicorn64 »

bildiğim kadarıyla servisin senkron/asenkron olması söz konusu değil, servisin senkron/asenkron olarak çağrılması mümkün, yani olay servis tarafında değil, servisi çağıran client uygulama tarafında...

client uygulama .net tarafında hazırlanıyorsa, herhangi bir web servisi add service reference ile projeye import edildiğinde visual studionun servisin çağrımı için oluşturduğu kodlarla servis senkron veya asenkron çağrılabiliniyor,

https://www.google.com.tr/search?q=c%23 ... chronously
https://www.google.com.tr/search?q=c%23 ... F%C4%B1rma
bazen yükselmek için önce dibi görmek gerekir...

forumda soru sormadan önce bakılmalı bence
daha fazlası için...

yürümeyi öğrenmeden koşmaya çalışanlar için, tökezleyip düşmek kaçınılmazdır...

Resim
Kullanıcı avatarı
muratmutlu
Üye
Mesajlar: 57
Kayıt: 02 Tem 2005 02:44
Konum: Antalya

Re: Asenkron web servis örneği

Mesaj gönderen muratmutlu »

Web servis çağırma konusunu dediğiniz gibi ben de yapıyorum ancak bunu talep eden firma özellikle asenkron olarak istiyor. Şöyle linklerde bu mevcut ancak c# da çok iyi olmadığımdan dolayı kavrayamadım.

https://msdn.microsoft.com/en-us/librar ... 00%29.aspx
http://stackoverflow.com/questions/1836 ... ice-method
mkysoft
Kıdemli Üye
Mesajlar: 3103
Kayıt: 26 Ağu 2003 12:35
Konum: Berlin
İletişim:

Re: Asenkron web servis örneği

Mesaj gönderen mkysoft »

asenkron method geri dönüş değeri olmayan methoddur. string yerine void yazmanız yeterli olur. @unicorn64 'un söylediği gibi siz değişiklik yapmasanız bile çağıran taraf servisi yarattıktan sonra methodu bulup dönüş tipine void olarak değiştirmesi yeterlidir. Servis tarafında genelde yeni bir method daha eklenir, method_async şeklinde isimlendirilir ve geri dönüş değeri olmaz.
Neden servis kullandığınız bilmiyorum ama asenkron servislerde veri kaybolma ihtimali var, dönüş değeri olmadığından. veri kaybı önemli olmayan bir sistem olabilir, amaç çok hızlı cevap vermesiyse, method içinde hiç bir işlem yapmayıp, yapılacak işleri yeni açtığınız bir thread'e atıp direk return yapılabilir.
Kullanıcı avatarı
Lost Soul
Üye
Mesajlar: 1064
Kayıt: 01 Nis 2007 02:55
Konum: mekan ANKARA toprak ELAZIĞ
İletişim:

Re: Asenkron web servis örneği

Mesaj gönderen Lost Soul »

muratmutlu yazdı:Merhaba arkadaşlar.
...

Kod: Tümünü seç

[WebMethod]
public string Merhaba(string p1, int p2, string p3)
{
  ...
  ...
  return "Yukarıdaki işlemlere göre değiecek string bir ifade"
}
Yukarıdaki bu örneğin asenkron olarak çalışabilmesi için ne gibi değişiklikler yapılması gerekiyor
şu iki örnekte async web sevice anlatılmış

Microsoft:How to: Create Asynchronous Web Service Methods
async/await ile Asenkron Programlama

Ayrıca Bkz: async (C# Başvurusu)
Cevapla