|
[index.cshtml]
<div class="col-lg-12 control-section">
<ejs-grid id="Grid" allowPaging="true" created="created" toolbar="@(new List<string>() { "Add", "Edit", "Delete", "Cancel", "Update" })">
<e-grid-editSettings allowAdding="true" allowDeleting="true" allowEditing="true"></e-grid-editSettings>
<e-grid-columns>
<e-grid-column field="orderID" isPrimaryKey="true" headerText="Order ID" textAlign="Right" width="100"></e-grid-column>
<e-grid-column field="customerID" headerText="Customer ID" type="string" width="120"></e-grid-column>
<e-grid-column field="freight" headerText="Freight" textAlign="Right" format="C2" editType="numericedit" width="120"></e-grid-column>
<e-grid-column field="shipCountry" headerText="Ship Country" width="150"></e-grid-column>
</e-grid-columns>
</ejs-grid>
</div>
<script type="text/javascript">
function created() {
// sending additional parameter here
class SerialNoAdaptor extends ej.data.UrlAdaptor {
beforeSend(dataManager, request, ajaxSettings) {
var action = JSON.parse(ajaxSettings.data).action;
if (action == 'remove') {
var dataStrng = ajaxSettings.data;
dataStrng = dataStrng.slice(0, -1);
dataStrng = dataStrng + ',"Params":' + 1 + '}';
ajaxSettings.data = dataStrng;
ajaxSettings.options.data = dataStrng;
}
}
}
var grid = document.querySelector('#Grid').ej2_instances[0];
grid.dataSource = new ej.data.DataManager({
url: "/Home/UrlDataSource",
insertUrl: "/Home/Insert",
updateUrl: "/Home/Update",
removeUrl:"/Home/Delete",
adaptor: new SerialNoAdaptor()
});
}
</script>
-------------------------------------------------------------------------------------------------------------
[HomeContrller.cs]
public ActionResult Delete([FromBody]CRUDModel<OrdersDetails> value)
{
if (value.Params == 1)
{
OrdersDetails.GetAllRecords().Remove(OrdersDetails.GetAllRecords().Where(or => or.OrderID == int.Parse(value.key.ToString())).FirstOrDefault());
}
return Json(value);
}
public class CRUDModel<T> where T : class
{
public string action { get; set; }
public string table { get; set; }
public string keyColumn { get; set; }
public object key { get; set; }
public T value { get; set; }
public List<T> added { get; set; }
public List<T> changed { get; set; }
public List<T> deleted { get; set; }
public int Params { get; set; }
}
|