Asp.Net
26
Mar
2012
Mvc 3 Json
Kategori : MvcjQueryJson
Ekleyen : Admin
Merhaba, Arkadaşlar bugünkü makalemde sizlere json yapısını kullanarak mvc projelerimizde veri gönderimi hakkında örnek bir uygulama yapacağım. Json dan kısaca bahsetmek gerekirse; JSON (JavaScript Object Notation) hafif bir veri değişim formatıdır. JavaScript Programlama Dili, alt kümesi üzerine kurulmuştur. JSON, tamamen programlama dillerinden bağımsız, ancak C türevi dillere (C, C++, C#, Java, JavaScript, Perl, Python ve daha pek çoğu), yazılış bakımından çok benzeyen bir veri tanımlama formatıdır. Bu özellikler, JSON'u veri değiştokuşu için ideal hale getirmektedir. Kaynak ve Detay
Projemizde Kullanacağımız Uyeler sınıfımız.
   1:  [Serializable]
   2:  public class Uyeler
   3:  {
   4:      public string Name { get; set; }
   5:      public string LastName { get; set; }
   6:      public string Email { get; set; }
   7:  }
Dönen değeri alacağımız Sonuc sınıfımız.
   1:  [Serializable]
   2:  public class Sonuc
   3:  {
   4:      public string Mesaj { get; set; }
   5:  }
Json datalarımızı gönderip, Dönen değeri alacağımız sayfamız.
   1:  [HttpPost]
   2:  public ActionResult UyeKayit(Uyeler uyeler)
   3:  {
   4:      string bilgiler = string.Format("Adınız : {0}, Soyadınız : {1}, Email Adresiniz : {2}", uyeler.Name, uyeler.LastName, uyeler.Email);
   5:   
   6:      return Json(new Sonuc() { Mesaj = bilgiler });
   7:  }
Index sayfamız içinde verileri gönderecek Java Script kodlarımız.
   1:      <script type="text/javascript">
   2:   
   3:          $(function () {
   4:   
   5:              $("#uyeKayit").click(function () {
   6:   
   7:                  var gelen = Veriler();
   8:                  var jsonData = JSON.stringify(gelen);
   9:   
  10:                  $.ajax({
  11:   
  12:                      url: "/Home/UyeKayit",
  13:                      type: "Post",
  14:                      data: jsonData,
  15:                      dataType: "json",
  16:                      contentType: "application/json; charset=utf-8",
  17:                      success: function (data) {
  18:   
  19:                          var sonuc = data.Mesaj;
  20:                          $("#Sonuclar").html(sonuc);
  21:                      }
  22:                  })
  23:              });
  24:          });
  25:   
  26:          function Veriler() {
  27:   
  28:              var Name = $("#name").val();
  29:              var LastName = $("#lastname").val();
  30:              var Email = $("#email").val();
  31:   
  32:              return (Name == "") ? null : { name: Name, lastname: LastName, email: Email };
  33:          }
  34:   
  35:      </script>
  36:   
  37:  <h2>Mvc 3 ile Json Veri Gönderimi</h2>
  38:   
  39:      <div style="font-family:Verdana; font-size:12px;">
  40:   
  41:          <div style="padding:15px 0;">
  42:          <span id="Sonuclar"></span>
  43:          </div>
  44:   
  45:          <div style="padding:5px 0;">Adı</div>
  46:          <div><input type="text" id="name" /></div>
  47:          <div style="padding:5px 0;">Soyadı</div>
  48:          <div><input type="text" id="lastname" /></div>
  49:          <div style="padding:5px 0;">Email Adresi</div>
  50:          <div><input type="text" id="email" /></div>
  51:          <div><input type="submit" value="gönder" id="uyeKayit" /></div>
  52:   
  53:      </div>
Konunun basitliğinden dolayı pek birşey yazma gereği duymadım (kodlar gayet açık), jQuery ile birleştirdiğinizde çok şık çalışmalar yapacağınız kesin :)
Başka bir makalede görüşmek dileğiyle Esenkalın.

Örnek Proje : Mvc 3 Json
16 Mayıs Çar, 2012 Halit ÇOLAK
Hocam merhabalar. Bu yazdığınız örneği webservice ile daha kolay yapmazmıyız ? Yada aralarında ki fark nedir ? Ajax'da URL kısmını değiştirerek web service olarak yönlendirmek olmaz mı? Yada benim bahsettiğim şekilde web service işlemez mi?
17 Mayıs Per, 2012 Admin
Halit, Burdaki amaç zaten Web Service'e gereksinim duymadan bu işlemleri halletmek. Web Service Asp.Net Projeler için daha uygun olur. Zorluğa kolaylığa değinecek olursak hiç bir fark yok Mvc'de ki avantaj Veriyi json olarak geri döndürebilmesi; taklasız, sıkıntısız :)