I'm getting a 404 not found when I click either the Edit, Create, or Delete buttons. Read works. I thought this would be pretty straight forward but.....? Here's my code:
[AcceptVerbs(HttpVerbs.Post)]public ActionResult CategoryResultsUpdate([DataSourceRequest] DataSourceRequest request, ProjectCategoryResults pcr){ if (pcr != null && ModelState.IsValid) { this.m_restWrapper.EditProjectCategoryResults(pcr); } return Json(new[] { pcr }.ToDataSourceResult(request, ModelState));}[AcceptVerbs(HttpVerbs.Post)]public ActionResult CategoryResultsDestroy([DataSourceRequest] DataSourceRequest request, ProjectCategoryResults pcr){ //if (pcr != null && ModelState.IsValid) //{ // this.m_restWrapper.EditProjectCategoryResults(pcr); //} return Json(new[] { pcr }.ToDataSourceResult(request, ModelState));}[AcceptVerbs(HttpVerbs.Post)]public ActionResult CategoryResultsCreate([DataSourceRequest] DataSourceRequest request, ProjectCategoryResults pcr){ if (pcr != null && ModelState.IsValid) { pcr.CreateDate = DateTime.Now; this.m_restWrapper.CreateProjectCategoryResults(pcr); } return Json(new[] { pcr }.ToDataSourceResult(request, ModelState));}@model GIS.Portal.Models.ProjectContentViewModel<script> function dataBound() { this.expandRow(this.tbody.find("tr.k-master-row").first()); }</script>@(Html.Kendo().Grid<ivision>() .Name("grid") .Columns(columns => { columns.Bound(d => d.Name).Title("Divisions"); }) .ClientDetailTemplateId("templateSub") .HtmlAttributes(new { style = "height:800px;" }) .DataSource(dataSource => dataSource .Ajax() .Read(read => read.Action("Divisions", "Division", new { projectID = Model.ProjectID })) ))<script id="templateSub" type="text/kendo-tmpl"> @(Html.Kendo().Grid<SubDivision>() .Name("grid_#=DivisionID#") .Columns(columns => { columns.Bound(s => s.Name).Title("SubDivisions"); }) .ClientDetailTemplateId("templateCat") .DataSource(dataSource => dataSource .Ajax() .Read(read => read.Action("SubDivisions", "SubDivision", new { projectID = Model.ProjectID, divisionID = "#=DivisionID#" })) ) .Sortable() .ToClientTemplate() )</script><script id="templateCat" type="text/kendo-tmpl"> @(Html.Kendo().Grid<ProjectCategoryResults>() .Name("grid_#=SubDivisionID#") .Columns(columns => { columns.Bound(pcr => pcr.CategoryName); columns.Command(command => { command.Edit(); command.Destroy(); }).Width(200); }) .ToolBar(toolBar => toolBar.Create()) .Editable(editable => editable.Mode(GridEditMode.InLine)) .DataSource( dataSource => dataSource.Ajax() .PageSize(20) .Events(events => events.Error("error_handler")) .Model(model => model.Id(pcr => pcr.ProjectsCategoryResultsID)) .Read(read => read.Action("CategoryResultsRead", "Category", new { projectID = Model.ProjectID, subDivisionID = "#=SubDivisionID#" })) .Create(create => create.Action("CategoryResultsCreate", "Category")) .Update(update => update.Action("CategoryResultsUpdate", "Category")) .Destroy(destroy => destroy.Action("CategoryResultsDestroy", "Category")) ) .Sortable() .Scrollable() .ToClientTemplate() )</script><script type="text/javascript"> function error_handler(e) { if (e.errors) { var message = "Errors:\n"; $.each(e.errors, function (key, value) { if ('errors' in value) { $.each(value.errors, function () { message += this + "\n"; }); } }); alert(message); } }
</script>