Kişisel Sayfaları
İlgi Alanları
İş Tecrubesi
Eğitim Geçmişi
Sertifikalar & Başarılar
Kullanıcıya ait test sonucu bulunmamaktadır.
Dil Becerileri
Son Forum Aktiviteleri
2Windows Phone Async bir methodu construcorda çağırmak
Basitçe şöyle izah etmek gerekirse json data mı oluşturduğum JsonDataManager classının içindeki static methodlar ile çekebiliyorum bu methodlar async ve bir problemleri yok , getWritings dediğimde bu method da async olduğu için json ın parse işlemlerini bekliyor fakat bu methodu constructor da çağırıp longlistview umun içine atmaya gelince getWritings i beklemiyor ve constructor ı async yapma şansım da yok . Öneri ve çözümlerinizi bekliyorum teşekkürler
[code] public partial class Page2 : PhoneApplicationPage
{
List<Writing> writings;
public Page2()
{
InitializeComponent();
getWritings();
}
private async void getWritings()
{
string jsonData = await JsonDataManager.GetJsonAsync("1");
JObject obj = JObject.Parse(jsonData);
JArray array = (JArray)obj["posts"];
for (int i = 0; i < array.Count; i++)
{
Writing writing = new Writing();
writing.content = JsonDataManager.JsonParse(array, i, "content");
writing.date = JsonDataManager.JsonParse(array, i, "date");
writing.image = JsonDataManager.JsonParse(array, i, "url");
writing.summary = JsonDataManager.JsonParse(array, i, "excerpt");
writing.title = JsonDataManager.JsonParse(array, i, "title");
writings.Add(writing);
}
myLongList.ItemsSource = writings;
}
}[/code]
Windows Phone Json Parse İşlemi Bekleme
Basitçe bir request-response a dayalı bir class oluşturdum, istediğim kategorinin id sini girerek o kategorinin ilk yazısını json olarak okuyup parse edip getWriting ile başka classlarımda JsonDataManager objesi oluşturarak çekiyorum.Fakat problem şu ki Aync olmasına karşın hala JObject.Parse methodum json response umu beklemiyor ve direk ilk başta tanımladığım "doldurulacak" stringini alıyor. Beklemesini nasıl sağlayabilirim ? Teşekkürler
[code]
public class JsonDataManager
{
String myData = "doldurulacak";
public JsonDataManager(string Category)
{
String url = "http://www.kaanbarisbayrak.com/?json=get_category_posts&cat="+Category;
WebClient wc = new WebClient();
wc.Encoding = System.Text.Encoding.UTF8;
wc.Headers["Accept"] = "application/json";
wc.DownloadStringAsync(new Uri(url), UriKind.Relative);
wc.DownloadStringCompleted += new DownloadStringCompletedEventHandler(wc_DownloadStringCompleted);
}
public String getWriting()
{
JObject obj = JObject.Parse(myData);
JArray array = (JArray)obj["posts"];
string writing = (string)array[0]["content"];
return writing;
}
private void wc_DownloadStringCompleted(object sender, DownloadStringCompletedEventArgs e)
{
myData = e.Result;
}
}
[/code]