<script type="text/javascript">
var crudServiceBaseUrl = "api/VMDWebAPI";
var deferReasonGrid = $("#DeferReasonGrid");
$(document).ready(function ()
{
var DeferReasonDS = new kendo.data.DataSource({
transport: {
read: {
cache: false,
contentType: "application/json; charset=utf-8",
url: crudServiceBaseUrl,
dataType: "json",
type: "GET",
complete: function (jqXHR, textStatus) { }
}
,
create: {
cache: false,
contentType: "application/json;charset=utf-8",
url: crudServiceBaseUrl,
dataType: "json",
type: "POST",
complete: function (jqXHR, textStatus)
{
deferReasonGrid.data("kendoGrid").dataSource.read();
}
},
update: {
cache: false,
contentType: "application/json;charset=utf-8",
url: crudServiceBaseUrl,
dataType: "json",
type: "PUT",
complete: function (jqXHR, textStatus)
{
deferReasonGrid.data("kendoGrid").dataSource.read();
}
},
destroy: {
url: crudServiceBaseUrl,
type: "DELETE",
complete: function (jqXHR, textStatus)
{
deferReasonGrid.data("kendoGrid").dataSource.read();
}
},
parameterMap: function (data, operation)
{
if (operation == "update" || operation == "create") {
if (data.models[0].DeferReasonID == null && operation != "destroy") {
operation = "create";
}
else {
operation = "update";
}
return kendo.stringify({ DeferReason: data.models[0] });
}
else if (operation == "destroy") {
return kendo.stringify({ DeferReason: data.models[0] });
}
}
}
,
batch: true,
pageSize: 12,
schema: {
model: {
fields: {
DeferReasonID: { editable: false, nullable: true, defaultValue: '00000000-0000-0000-0000-000000000000' },
Description: { validation: { required: true, validationmessage: "Required:Description"} },
CreatedDate: { type: "date", editable: false, template: '#= kendo.toString(CreatedDate,"MM/dd/yyyy") #' },
ModifiedDate: { type: "date", editable: false, template: '#= kendo.toString(CreatedDate,"MM/dd/yyyy") #' }
}
}
}
});
var DeferReasonGrid = deferReasonGrid.kendoGrid({
dataSource: DeferReasonDS,
pageable: false,
navigatable: false,
selectable: true,
sortable: false,
editable: { mode: "popup", destroy: "true", update: "true", confirmation: "Are you sure you want to remove this Defer Reason?" },
toolbar:
[
"create"
],
columns:
[
{
field: "Description",
title: '<span style=\'text-align:left;\'>Description</span>',
width: "360px"
},
{
command: "destroy"
}
]
});
});
</script>
Here is my API
public class VMDWebAPIController : ApiController
{
[HttpGet]
public DeferReason[] GetAllDeferReason()
{
try
{
return DeferReasonDAL.GetAllDeferReasons().ToArray();
}
catch (Exception ex)
{
throw ex;
}
}
[HttpPost]
public void InsertDeferReason(DeferReason DeferReason)
{
try
{
DeferReasonDAL.Insert(DeferReason);
}
catch (Exception ex)
{
throw ex;
}
}
[HttpPut]
public void UpdateDeferReason(DeferReason DeferReason)
{
try
{
DeferReasonDAL.Update(DeferReason);
}
catch (Exception ex)
{
throw ex;
}
}
[HttpDelete]
public void DeleteDeferReason(DeferReason DeferReason)
{
try
{
DeferReasonDAL.Remove(DeferReason.DeferReasonID);
}
catch (Exception ex)
{
throw ex;
}
}
}
var crudServiceBaseUrl = "api/VMDWebAPI";
var deferReasonGrid = $("#DeferReasonGrid");
$(document).ready(function ()
{
var DeferReasonDS = new kendo.data.DataSource({
transport: {
read: {
cache: false,
contentType: "application/json; charset=utf-8",
url: crudServiceBaseUrl,
dataType: "json",
type: "GET",
complete: function (jqXHR, textStatus) { }
}
,
create: {
cache: false,
contentType: "application/json;charset=utf-8",
url: crudServiceBaseUrl,
dataType: "json",
type: "POST",
complete: function (jqXHR, textStatus)
{
deferReasonGrid.data("kendoGrid").dataSource.read();
}
},
update: {
cache: false,
contentType: "application/json;charset=utf-8",
url: crudServiceBaseUrl,
dataType: "json",
type: "PUT",
complete: function (jqXHR, textStatus)
{
deferReasonGrid.data("kendoGrid").dataSource.read();
}
},
destroy: {
url: crudServiceBaseUrl,
type: "DELETE",
complete: function (jqXHR, textStatus)
{
deferReasonGrid.data("kendoGrid").dataSource.read();
}
},
parameterMap: function (data, operation)
{
if (operation == "update" || operation == "create") {
if (data.models[0].DeferReasonID == null && operation != "destroy") {
operation = "create";
}
else {
operation = "update";
}
return kendo.stringify({ DeferReason: data.models[0] });
}
else if (operation == "destroy") {
return kendo.stringify({ DeferReason: data.models[0] });
}
}
}
,
batch: true,
pageSize: 12,
schema: {
model: {
fields: {
DeferReasonID: { editable: false, nullable: true, defaultValue: '00000000-0000-0000-0000-000000000000' },
Description: { validation: { required: true, validationmessage: "Required:Description"} },
CreatedDate: { type: "date", editable: false, template: '#= kendo.toString(CreatedDate,"MM/dd/yyyy") #' },
ModifiedDate: { type: "date", editable: false, template: '#= kendo.toString(CreatedDate,"MM/dd/yyyy") #' }
}
}
}
});
var DeferReasonGrid = deferReasonGrid.kendoGrid({
dataSource: DeferReasonDS,
pageable: false,
navigatable: false,
selectable: true,
sortable: false,
editable: { mode: "popup", destroy: "true", update: "true", confirmation: "Are you sure you want to remove this Defer Reason?" },
toolbar:
[
"create"
],
columns:
[
{
field: "Description",
title: '<span style=\'text-align:left;\'>Description</span>',
width: "360px"
},
{
command: "destroy"
}
]
});
});
</script>
Here is my API
public class VMDWebAPIController : ApiController
{
[HttpGet]
public DeferReason[] GetAllDeferReason()
{
try
{
return DeferReasonDAL.GetAllDeferReasons().ToArray();
}
catch (Exception ex)
{
throw ex;
}
}
[HttpPost]
public void InsertDeferReason(DeferReason DeferReason)
{
try
{
DeferReasonDAL.Insert(DeferReason);
}
catch (Exception ex)
{
throw ex;
}
}
[HttpPut]
public void UpdateDeferReason(DeferReason DeferReason)
{
try
{
DeferReasonDAL.Update(DeferReason);
}
catch (Exception ex)
{
throw ex;
}
}
[HttpDelete]
public void DeleteDeferReason(DeferReason DeferReason)
{
try
{
DeferReasonDAL.Remove(DeferReason.DeferReasonID);
}
catch (Exception ex)
{
throw ex;
}
}
}