public async Task <string> GetMyDkm() { var uriMyDkm = new Uri(string.Format(UrlHelper.DKM_URL_LOGIN, CrossSettings.Current.GetValueOrDefault("uname", null), CrossSettings.Current.GetValueOrDefault("pass", null))); using (var client = new HttpClient { Timeout = TimeSpan.FromSeconds(60) }) { try { var respone = await client.GetAsync(uriMyDkm); if (!respone.IsSuccessStatusCode) { return("Rincian DKM gagal diambil, silakan Segarkan halaman!"); } var byteResult = await respone.Content.ReadAsByteArrayAsync(); var result = Encoding.UTF8.GetString(byteResult, 0, byteResult.Length); var modelResult = JsonConvert.DeserializeObject <List <Dkm> >(result); Dkm myDkm = modelResult[0]; //jangan ditiru, coba pelajari lagi desgin pattern MVVM MyDkm.Id_Dkm = myDkm.Id_Dkm; MyDkm.Uname_Dkm = myDkm.Uname_Dkm; MyDkm.Pass_Dkm = myDkm.Pass_Dkm; MyDkm.Alamat_Dkm = myDkm.Alamat_Dkm; MyDkm.Tlp_Dkm = myDkm.Tlp_Dkm; MyDkm.Email_Dkm = myDkm.Email_Dkm; MyDkm.Ketua_Dkm = myDkm.Ketua_Dkm; MyDkm.Masjid_Dkm = myDkm.Masjid_Dkm; return(null); } catch (Exception ex) { Debug.WriteLine(@"Kesalahan {0}", ex.Message); return("Terjadi kesalahan, silakan Segarkan halaman!"); } } }
/// <summary> /// Service untuk menyimpan data Event Masjid dengan method POST dan PUT /// </summary> /// <param name="dkm">data dkm yang akan disimpan</param> /// <param name="isNewDkm">true: buat baru; false: update</param> /// <returns></returns> public async Task <bool> SaveDkm(Dkm dkm, bool isNewDkm = false) { var uriCreate = new Uri(string.Format(UrlHelper.DKM_URL)); var uriUpdate = new Uri(string.Format(UrlHelper.EDIT_URL)); using (var client = new HttpClient { Timeout = TimeSpan.FromSeconds(30) }) { try { var post = JsonConvert.SerializeObject(dkm); var content = new StringContent(post, Encoding.UTF8, "application/json"); //HttpContent content = new StringContent(post); content.Headers.ContentType = MediaTypeHeaderValue.Parse("application/json"); HttpResponseMessage respone = null; if (isNewDkm) { respone = await client.PostAsync(uriCreate, content); } else { respone = await client.PostAsync(uriUpdate, content); } Debug.WriteLine(content.ToString()); Debug.WriteLine(respone.ToString()); if (!respone.IsSuccessStatusCode) { return(false); } return(true); } catch (Exception ex) { Debug.WriteLine("Kesalahan {0}", ex.Message); return(false); } } }
async void Simpankan(object sender, EventArgs e) { //if (!lblPword2.Text.Contains(lblPword.Text)) //{ // lblNotif.Text = "Isi kata sandi dengan benar!"; // return; //} var addDkm = new Dkm() { Id_Dkm = idDkm, Uname_Dkm = lblUname.Text, Pass_Dkm = lblPword.Text, Masjid_Dkm = lblDkm.Text, Alamat_Dkm = lblAlamat.Text, Tlp_Dkm = lblTelp.Text, Email_Dkm = lblEmail.Text, Ketua_Dkm = lblKetua.Text, }; DataService service = new DataService(); if (await service.SaveDkm(addDkm, isNewDkm)) { await DisplayAlert("Info", "Dkm berhasil disimpan", "OK"); if (isNewDkm) { Navigation.InsertPageBefore(new DkmEventPage(), this); } CrossSettings.Current.AddOrUpdateValue("isLogin", false); await Navigation.PopToRootAsync(); } else { await DisplayAlert("Info", "Dkm gagal disimpan.", "OK"); } }