sheikh-k
11/3/2016 - 4:28 PM

Simple Ajax call to ASP.Net MVC Controller.js

  //================================ EXAMPLE - 1 ================================
  
  // ASP.Net mvc controller
  //[HttpPost]
  //public JsonResult AddOrUpdateProduct()
  //{
      // write c# code here
      //var isUpdated = true;
      //return Json(isUpdated, JsonRequestBehavior.AllowGet);
  //}
  
 var formData = {
    ID: 1,
    Name: "Vaseline",
    Price: 521.75
  };

  $.ajax({
      type: "POST",
      url: '/Product/AddOrUpdateProduct',
      data: formData,
      dataType: 'json',
      contentType: false,
      processData: false,
      success: function (isUpdated) {  // isUpdated is the value returned from asp.net controller
        //do something
      },
      error: function(error) {
          alert("Error Submitting Form");
      }
  });



  //===============================EXAMPLE 2 =====================

  // asp.net mvc controller
  //[HttpPost]
  //public JsonResult UpdateSalesOrderDetails(SAL_Order order, List<SAL_OrderDetail> salesOrderDetails)
  //{
      // do some .net code hrere
      //return Json(order, JsonRequestBehavior.AllowGet);
  //}

  // Order info
  var anOrder = {
      OrderID: 1,
      DocNo: 444,
      OrderNo: "ORD-001",
      DocDate: "5/7/2016",
      OrderDate: "5/11/2016",
      CustomerID: 55,
      InvoiceType: 1,
      Remark: "REM",
      SubTotal: 500,
      Discount: 10,
      NetAmount: 490
  };

  // List of orderDetail
  var salesOrderDetails = [];
  for (var i = 0; i < 5; i++) {
      var aOrderDetails = {
          ProductID: i,
          Qty: i*2,
          UnitPrice: i*10,
          MUnit: i,
          Amount: (i*2)*(i*10),
          OrderID: 1
      }
      salesOrderDetails.push(aOrderDetails);
  }

  $.ajax({
      contentType: 'application/json; charset=utf-8',
      dataType: 'json',
      type: 'POST',
      url: '@Url.Action("UpdateSalesOrderDetails", "SalesOrder")',
      data: JSON.stringify({ order: anOrder, salesOrderDetails: salesOrderDetails }),
      success: function (order) { //order returned from asp.net mvc controller
        // do something
      },
      cache: false
  });