我使用Kendo UI網格(MVC Wrappers),ASP.NET MVC 3和Jquery。劍道可編輯網格,ASP.NET MVC更新行限制?
我有一個可編輯的批處理模式Kendo網格。在許多情況下,這個網格將有30或40行,全部都可以編輯給用戶。當用戶點擊提交按鈕時,Kendo軟件將網格的所有更新行放入一個集合中,並將它們發送到服務器進行處理。當用戶編輯的行數少於18時,所有工作都正常。如果用戶編輯了17條記錄,它們都會很好地發送到控制器。如果用戶編輯了18條或更多條記錄,則會出錯,並且它甚至不會在服務器上達到我的中斷點。錯誤消息不是有意義的,因爲它只是從我的頁面中獲取的一堆HTML。
這裏是我的控制器的操作方法如下內容:
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult _AjaxUpdateFields([DataSourceRequest] DataSourceRequest request, [Bind(Prefix = "models")]IEnumerable<People> updatedPeople)
{
//DO STUFF WITH UPDATED DATA
}
這裏是我的網格設置洛斯類似:
Html.Kendo()
.Grid<MyProject.Models.Domain.Students>()
.Name("Students")
.Sortable(settings => settings.Enabled(false))
.Filterable(settings => settings.Enabled(false))
.Resizable(resizing => resizing.Columns(true))
.Scrollable(settings => settings.Enabled(true))
.HtmlAttributes(new { style = "font-size: 85%;" })
.Columns(columns =>
{
columns.Bound(o => o.StudentId).Title("StudentId").Hidden();
columns.Bound(o => o.Name).Title("Student Name").Width(200);
columns.Bound(o => o.teacher).Title("Teacher")
.ClientTemplate("#=data.teacher ? teacher.teacherName : ''#").Width(150).Filterable(false);
})
.DataSource(dataSource => dataSource.Ajax()
.Batch(true)
.ServerOperation(false)
.Model(model =>
{
model.Id(c => c.StudentId);
model.Field(c => c.teacher);
})
.Events(events => events.Error("Field_onError"))
.Read(read => read.Action("_AjaxGetFields", "Student"))
.Update("_AjaxUpdateFields", "Student")
.Destroy("_AjaxDelFields", "Student"))
.Events(events => events.DataBound("Fields_onDataBound")
.Change("onFieldSelect")
.Edit("onFieldEdit")
)
.ToolBar(commands =>
{
commands.Save().HtmlAttributes(new { id = "saveField" });
})
.Scrollable(scrollable => scrollable.Height("375px"))
.Selectable()
.Editable(editing => editing.Mode(Kendo.Mvc.UI.GridEditMode.InCell)).Render();
所以我想既然我能做到17條記錄完全正常,但只要碰到18或更多,它就會崩潰,那麼我需要修改一些限制或最大限度的地方?
Kendo網格在當時可以發送回控制器的行數是否有限制?
是否有可能有一些MVC,IE或Web服務器設置限制了這一點?或者可能需要設置的JQuery中的某些內容?