En iyi yanıtlayıcılar
C# JSON SORUNSALI

Soru
-
Arkadaşlar merhaba, C# formda kullabileceğim web sitemden aldığım json kodlarını nasıl kullanacağım hakkımda hiç bilgim yok json u daha önce hiç kullanmadım. Jsonda kayıtlı olan verilerimi kodlamada nasıl kullanabilirim..
Örn : ( {"1":{"giris":"09:10","cikis":"09:45"}, şu kodun içindeki rakamları almak istiyorum sadece... )
Yanıtlar
-
Bu kodlarla alabilirsiniz.
string JsonString = "{\"1\":{\"giris\":\"09:10\",\"cikis\":\"09:45\"}}"; dynamic mesai = JsonConvert.DeserializeObject(JsonString); label1.Text = $"{mesai["1"].giris} - {mesai["1"].cikis}";
Newtonsoft.Json paketini nasıl yükleyeceğinizi buradan öğrenebilirsiniz.
Sorunuzun yanıtı bu ise "Yanıt olarak işaretle"yerek siz de forumun işleyişine katkıda bulununuz...
- Yanıt Olarak İşaretleyen mesut ommuş 26 Ekim 2018 Cuma 12:50
-
Özellik adının, sadece numara içeren metin olması, pek karşılaşmayacağınız bir durum.
Size, Json kullanımını anlamanız için, yukarıdaki yanıtımdan daha fazla ayrıntı içeren bir örnek hazırladım.
class Mesai { public string giris { get; set; } public string cikis { get; set; } [JsonIgnore] public DateTime Giris { get { if (DateTime.TryParse(giris, out DateTime ret)) return ret; else return DateTime.MinValue; } } [JsonIgnore] public DateTime Cikis { get { if (DateTime.TryParse(cikis, out DateTime ret)) return ret; else return DateTime.MinValue; } } public Mesai() { giris = ""; cikis = ""; } } private void button1_Click(object sender, EventArgs e) { string JsonString = "{\"1\":{\"giris\":\"09:10\",\"cikis\":\"09:45\"}}"; Dictionary<string, Mesai> mesai = JsonConvert.DeserializeObject<Dictionary<string, Mesai>>(JsonString); DateTime MesaiBaslangici = DateTime.Now.Date.AddHours(9); mesai.Keys.ToList().ForEach(m => { if (mesai[m].Giris > MesaiBaslangici) { MessageBox.Show($"UYARI: {m} numaralı personel, mesaiye {(mesai[m].Giris-MesaiBaslangici).TotalMinutes} dakika geç geldi !"); } }); }
İfadeleri incelerseniz kolayca kullanabileceğinizi umuyorum.
Başarılar.
Sorunuzun yanıtı bu ise "Yanıt olarak işaretle"yerek siz de forumun işleyişine katkıda bulununuz...
- Düzenleyen MuratAKSARAY 26 Ekim 2018 Cuma 10:50
- Yanıt Olarak İşaretleyen mesut ommuş 26 Ekim 2018 Cuma 12:50
-
Bu kodlarla alabilirsiniz.
string JsonString = "{\"1\":{\"giris\":\"09:10\",\"cikis\":\"09:45\"}}"; dynamic mesai = JsonConvert.DeserializeObject(JsonString); label1.Text = $"{mesai["1"].giris} - {mesai["1"].cikis}";
Newtonsoft.Json paketini nasıl yükleyeceğinizi buradan öğrenebilirsiniz.
Sorunuzun yanıtı bu ise "Yanıt olarak işaretle"yerek siz de forumun işleyişine katkıda bulununuz...
Sorunuzun yanıtı bu ise "Yanıt olarak işaretle"yerek siz de forumun işleyişine katkıda bulununuz...
- Yanıt Olarak İşaretleyen mesut ommuş 26 Ekim 2018 Cuma 12:50
Tüm Yanıtlar
-
-
Bu kodlarla alabilirsiniz.
string JsonString = "{\"1\":{\"giris\":\"09:10\",\"cikis\":\"09:45\"}}"; dynamic mesai = JsonConvert.DeserializeObject(JsonString); label1.Text = $"{mesai["1"].giris} - {mesai["1"].cikis}";
Newtonsoft.Json paketini nasıl yükleyeceğinizi buradan öğrenebilirsiniz.
Sorunuzun yanıtı bu ise "Yanıt olarak işaretle"yerek siz de forumun işleyişine katkıda bulununuz...
- Yanıt Olarak İşaretleyen mesut ommuş 26 Ekim 2018 Cuma 12:50
-
Kısa bir örnek satır yazabilir misiniz? Mesela if bloğunun içine "09:10" verisini nasıl eklicem ???
Daha hiç json ile çalışmadım en ufak fikrim dahi yok:((
- Düzenleyen mesut ommuş 26 Ekim 2018 Cuma 08:11
-
Kısa bir örnek satır yazabilir misiniz? Mesela if bloğunun içine "09:10" verisini nasıl eklicem ???
Daha hiç json ile çalışmadım en ufak fikrim dahi yok:((
Bundan sonrası Json bilgisi gerektirmiyor. Sadece c# bilmeniz yeterli.
Elde ettiğiniz veriyi istediğiniz formata çevirip kullanabilirsiniz.
Örneğin,
DateTime MesaiBaslangici = DateTime.Now.Date.AddHours(9); DateTime giris = Convert.ToDateTime($"{mesai["1"].giris}"); if (giris > MesaiBaslangici) { MessageBox.Show("UYARI: Mesaiye geç geldiniz !"); }
Sorunuzun yanıtı bu ise "Yanıt olarak işaretle"yerek siz de forumun işleyişine katkıda bulununuz...
-
Özellik adının, sadece numara içeren metin olması, pek karşılaşmayacağınız bir durum.
Size, Json kullanımını anlamanız için, yukarıdaki yanıtımdan daha fazla ayrıntı içeren bir örnek hazırladım.
class Mesai { public string giris { get; set; } public string cikis { get; set; } [JsonIgnore] public DateTime Giris { get { if (DateTime.TryParse(giris, out DateTime ret)) return ret; else return DateTime.MinValue; } } [JsonIgnore] public DateTime Cikis { get { if (DateTime.TryParse(cikis, out DateTime ret)) return ret; else return DateTime.MinValue; } } public Mesai() { giris = ""; cikis = ""; } } private void button1_Click(object sender, EventArgs e) { string JsonString = "{\"1\":{\"giris\":\"09:10\",\"cikis\":\"09:45\"}}"; Dictionary<string, Mesai> mesai = JsonConvert.DeserializeObject<Dictionary<string, Mesai>>(JsonString); DateTime MesaiBaslangici = DateTime.Now.Date.AddHours(9); mesai.Keys.ToList().ForEach(m => { if (mesai[m].Giris > MesaiBaslangici) { MessageBox.Show($"UYARI: {m} numaralı personel, mesaiye {(mesai[m].Giris-MesaiBaslangici).TotalMinutes} dakika geç geldi !"); } }); }
İfadeleri incelerseniz kolayca kullanabileceğinizi umuyorum.
Başarılar.
Sorunuzun yanıtı bu ise "Yanıt olarak işaretle"yerek siz de forumun işleyişine katkıda bulununuz...
- Düzenleyen MuratAKSARAY 26 Ekim 2018 Cuma 10:50
- Yanıt Olarak İşaretleyen mesut ommuş 26 Ekim 2018 Cuma 12:50
-
-
Bu kodlarla alabilirsiniz.
string JsonString = "{\"1\":{\"giris\":\"09:10\",\"cikis\":\"09:45\"}}"; dynamic mesai = JsonConvert.DeserializeObject(JsonString); label1.Text = $"{mesai["1"].giris} - {mesai["1"].cikis}";
Newtonsoft.Json paketini nasıl yükleyeceğinizi buradan öğrenebilirsiniz.
Sorunuzun yanıtı bu ise "Yanıt olarak işaretle"yerek siz de forumun işleyişine katkıda bulununuz...
Sorunuzun yanıtı bu ise "Yanıt olarak işaretle"yerek siz de forumun işleyişine katkıda bulununuz...
- Yanıt Olarak İşaretleyen mesut ommuş 26 Ekim 2018 Cuma 12:50
-
-
DateTime MesaiBaslangici = DateTime.Now.Date.AddHours(9);
Bu kod satırındaki parantez içindeki (9) neyi gösteriyor peki ?- Yanıt Olarak İşaretleyen mesut ommuş 26 Ekim 2018 Cuma 14:24
- Yanıt İşaretini Geri Alan mesut ommuş 26 Ekim 2018 Cuma 14:24
-