or
public ActionResult UpdateCreateDelete([DataSourceRequest] DataSourceRequest request, [Bind(Prefix = "updated")]List<Order> updatedOrders, [Bind(Prefix = "added")]List<Order> newOrders, [Bind(Prefix = "deleted")]List<Order> deletedOrders) { if (updatedOrders != null && updatedOrders.Count > 0) { for (int i = 0; i < updatedOrders.Count; i++) { var target = orderList.Where(o => o.OrderID == updatedOrders[i].OrderID).FirstOrDefault(); if (target != null) { int targetIndex = orderList.IndexOf(target); orderList[targetIndex].OrderDate = updatedOrders[i].OrderDate; orderList[targetIndex].EmployeeID = updatedOrders[i].EmployeeID; orderList[targetIndex].OrderDescription = updatedOrders[i].OrderDescription; } } } if (newOrders != null && newOrders.Count > 0) { for (int i = 0; i < newOrders.Count; i++) { newOrders[i].OrderID = orderList[orderList.Count - 1].OrderID + 1; orderList.Add(newOrders[i]); } } if (deletedOrders != null && deletedOrders.Count > 0) { for (int i = 0; i < deletedOrders.Count; i++) { var target = orderList.Where(o => o.OrderID == deletedOrders[i].OrderID).FirstOrDefault(); if (target != null) { orderList.Remove(target); } } } List<Order> responseOrders = new List<Order>(); responseOrders.AddRange(updatedOrders); responseOrders.AddRange(newOrders); responseOrders.AddRange(deletedOrders); return Json(responseOrders.ToDataSourceResult(request, ModelState)); //return Json("Success!"); } <script> function sendData() { var grid = $("#Grid").data("kendoGrid"), parameterMap = grid.dataSource.transport.parameterMap; //get the new and the updated records var currentData = grid.dataSource.data(); var updatedRecords = []; var newRecords = []; for (var i = 0; i < currentData.length; i++) { if (currentData[i].isNew()) { //this record is new newRecords.push(currentData[i].toJSON()); } else if(currentData[i].dirty) { updatedRecords.push(currentData[i].toJSON()); } } //this records are deleted var deletedRecords = []; for (var i = 0; i < grid.dataSource._destroyed.length; i++) { deletedRecords.push(grid.dataSource._destroyed[i].toJSON()); } var data = {}; $.extend(data, parameterMap({ updated: updatedRecords }), parameterMap({ deleted: deletedRecords }), parameterMap({ added: newRecords })); $.ajax({ url: "/Home/UpdateCreateDelete", data: data, type: "POST", error: function() { //Handle the server errors using the approach from the previous example }, success: function (result) { // How to make datasource and grid update themselves smoothly without the additional roundtrip caused by calling read() } }); }</script><link href="http://cdn.kendostatic.com/2014.1.416/styles/kendo.common.min.css" rel="stylesheet" /> <link href="http://cdn.kendostatic.com/2014.1.416/styles/kendo.default.min.css" rel="stylesheet" /> <link href="http://cdn.kendostatic.com/2014.1.416/styles/kendo.mobile.all.min.css" rel="stylesheet" /> <script src="http://cdn.kendostatic.com/2014.1.416/js/jquery.min.js"></script> <script src="http://cdn.kendostatic.com/2014.1.416/js/kendo.all.min.js"></script><body> <div style="margin-top: 25px; margin-left: 180px"> <input id="bookyear" style="width: 150px;" /> </div> <script> $(document).ready(function () { $("#bookyear").kendoDropDownList({ dataTextField: "Book", dataValueField: "RegionSize", dataSource: { transport: { read: { type: "POST", contentType: "application/json; charset=utf-8", //data: "{}", dataType: "json", url: "Default2.aspx/GetBooks", } } } }); }); </script> <script> var app = new kendo.mobile.Application(document.body, { transition: 'slide' }); //function showLoading() { // app.showLoading(); // setTimeout(function () { // app.changeLoadingMessage("Getting Data... Please wait..."); // }, 1000); //} </script></body></html>{"d":[{"__type":"SpecMobi.Books","Book":"ABTX","RegionSize":"Texas_Tall3"},{"__type":"SpecMobi.Books","Book":"ASPN","RegionSize":"West_Short3"},{"__type":"SpecMobi.Books","Book":"BATE","RegionSize":"East_Short2"},{"__type":"SpecMobi.Books","Book":"BCTX","RegionSize":"Texas_Tall3"},{"__type":"SpecMobi.Books","Book":"BRAN","RegionSize":"East_Tall2"},{"__type":"SpecMobi.Books","Book":"BRBN","RegionSize":"East_Short2"},{"__type":"SpecMobi.Books","Book":"BVAR","RegionSize":"East_Short2"},{"__type":"SpecMobi.Books","Book":"CARL","RegionSize":"Texas_Tall2"},{"__type":"SpecMobi.Books","Book":"CEMS","RegionSize":"East_Tall2"},{"__type":"SpecMobi.Books","Book":"CHER","RegionSize":"East_Tall2"},{"__type":"SpecMobi.Books","Book":"CMOK","RegionSize":"East_Short2"},{"__type":"SpecMobi.Books","Book":"CRAG","RegionSize":"West_Short2"},{"__type":"SpecMobi.Books","Book":"CRAW","RegionSize":"East_Tall2"},{"__type":"SpecMobi.Books","Book":"CRTH","RegionSize":"East_Short2"},{"__type":"SpecMobi.Books","Book":"DLTA","RegionSize":"West_Tall2"},{"__type":"SpecMobi.Books","Book":"ENMR","RegionSize":"Texas_Tall2"},{"__type":"SpecMobi.Books","Book":"ESPN","RegionSize":"West_Short2"},{"__type":"SpecMobi.Books","Book":"ESTE","RegionSize":"East_Tall2"},{"__type":"SpecMobi.Books","Book":"EURE","RegionSize":"East_Short2"},{"__type":"SpecMobi.Books","Book":"FOUR","RegionSize":"East_Short2"},{"__type":"SpecMobi.Books","Book":"FTSM","RegionSize":"East_Tall3"},{"__type":"SpecMobi.Books","Book":"GRCT","RegionSize":"West_Short2"},{"__type":"SpecMobi.Books","Book":"GROV","RegionSize":"East_Short2"},{"__type":"SpecMobi.Books","Book":"GRTD","RegionSize":"East_Short2"},{"__type":"SpecMobi.Books","Book":"HARR","RegionSize":"East_Tall2"},{"__type":"SpecMobi.Books","Book":"HOBB","RegionSize":"Texas_Tall2"},{"__type":"SpecMobi.Books","Book":"JBAR","RegionSize":"East_Short3"},{"__type":"SpecMobi.Books","Book":"JPLN","RegionSize":"East_Tall3"},{"__type":"SpecMobi.Books","Book":"KFTX","RegionSize":"Texas_Tall3"},{"__type":"SpecMobi.Books","Book":"KVTX","RegionSize":"Texas_Short2"},{"__type":"SpecMobi.Books","Book":"LCVI","RegionSize":"West_Tall2"},{"__type":"SpecMobi.Books","Book":"LHRP","RegionSize":"East_Short2"},{"__type":"SpecMobi.Books","Book":"LOAL","RegionSize":"West_Short2"},{"__type":"SpecMobi.Books","Book":"LSVG","RegionSize":"West_Short2"},{"__type":"SpecMobi.Books","Book":"LUTX","RegionSize":"Texas_Short4"},{"__type":"SpecMobi.Books","Book":"MAYE","RegionSize":"East_Short2"},{"__type":"SpecMobi.Books","Book":"MCID","RegionSize":"West_Short2"},{"__type":"SpecMobi.Books","Book":"MGCT","RegionSize":"East_Short2"},{"__type":"SpecMobi.Books","Book":"MLTX","RegionSize":"Texas_Tall3"},{"__type":"SpecMobi.Books","Book":"MONE","RegionSize":"East_Short2"},{"__type":"SpecMobi.Books","Book":"MOSC","RegionSize":"West_Tall2"},{"__type":"SpecMobi.Books","Book":"NEOS","RegionSize":"East_Short2"},{"__type":"SpecMobi.Books","Book":"NVDA","RegionSize":"East_Short2"},{"__type":"SpecMobi.Books","Book":"NWAR","RegionSize":"East_Tall3"},{"__type":"SpecMobi.Books","Book":"ODTX","RegionSize":"Texas_Tall3"},{"__type":"SpecMobi.Books","Book":"OXFD","RegionSize":"East_Short2"},{"__type":"SpecMobi.Books","Book":"OZNX","RegionSize":"East_Short2"},{"__type":"SpecMobi.Books","Book":"PENV","RegionSize":"Texas_Tall2"},{"__type":"SpecMobi.Books","Book":"PGAR","RegionSize":"East_Short2"},{"__type":"SpecMobi.Books","Book":"PITT","RegionSize":"East_Tall2"},{"__type":"SpecMobi.Books","Book":"PRSN","RegionSize":"East_Short2"},{"__type":"SpecMobi.Books","Book":"ROSW","RegionSize":"Texas_Tall2"},{"__type":"SpecMobi.Books","Book":"SARK","RegionSize":"East_Short2"},{"__type":"SpecMobi.Books","Book":"SNAN","RegionSize":"Texas_Tall3"},{"__type":"SpecMobi.Books","Book":"SOTX","RegionSize":"Texas_Short2"},{"__type":"SpecMobi.Books","Book":"SPFD","RegionSize":"East_Tall3"},{"__type":"SpecMobi.Books","Book":"SSAR","RegionSize":"East_Short2"},{"__type":"SpecMobi.Books","Book":"STBT","RegionSize":"West_Tall2"},{"__type":"SpecMobi.Books","Book":"STFE","RegionSize":"West_Tall2"},{"__type":"SpecMobi.Books","Book":"SUMM","RegionSize":"West_Short3"},{"__type":"SpecMobi.Books","Book":"SUNV","RegionSize":"West_Short3"},{"__type":"SpecMobi.Books","Book":"SWID","RegionSize":"West_Tall2"},{"__type":"SpecMobi.Books","Book":"TAOS","RegionSize":"West_Tall2"},{"__type":"SpecMobi.Books","Book":"TBTX","RegionSize":"Texas_Tall3"},{"__type":"SpecMobi.Books","Book":"TELL","RegionSize":"West_Short2"},{"__type":"SpecMobi.Books","Book":"VAIL","RegionSize":"West_Short3"},{"__type":"SpecMobi.Books","Book":"WNMR","RegionSize":"Texas_Short2"}]}