Jquery 剑道可编辑网格,ASP.NET MVC更新行限制?
我正在使用剑道UI网格(MVC包装器)、ASP.NETMVC3和Jquery 我有一个可编辑的批处理模式剑道网格。在许多情况下,此网格将有30或40行,用户可以编辑这些行。当用户单击submit按钮时,Kendo软件将网格中所有更新的行放在一个集合中,并将它们发送到服务器进行处理。当用户编辑的行数小于18时,“所有”都可以正常工作。如果用户编辑了17条记录,它们都会被完美地发送到控制器。如果用户编辑了18条或更多记录,则会出错,甚至不会在服务器上点击我的断点。错误消息也没有什么意义,因为它只是从我的页面中提取的一堆HTML 以下是我的控制器操作方法的外观:Jquery 剑道可编辑网格,ASP.NET MVC更新行限制?,jquery,asp.net-mvc,asp.net-mvc-3,kendo-ui,kendo-grid,Jquery,Asp.net Mvc,Asp.net Mvc 3,Kendo Ui,Kendo Grid,我正在使用剑道UI网格(MVC包装器)、ASP.NETMVC3和Jquery 我有一个可编辑的批处理模式剑道网格。在许多情况下,此网格将有30或40行,用户可以编辑这些行。当用户单击submit按钮时,Kendo软件将网格中所有更新的行放在一个集合中,并将它们发送到服务器进行处理。当用户编辑的行数小于18时,“所有”都可以正常工作。如果用户编辑了17条记录,它们都会被完美地发送到控制器。如果用户编辑了18条或更多记录,则会出错,甚至不会在服务器上点击我的断点。错误消息也没有什么意义,因为它只是从
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult _AjaxUpdateFields([DataSourceRequest] DataSourceRequest request, [Bind(Prefix = "models")]IEnumerable<People> updatedPeople)
{
//DO STUFF WITH UPDATED DATA
}
[AcceptVerbs(HttpVerbs.Post)]
公共操作结果\u AjaxUpdateFields([DataSourceRequest]DataSourceRequest请求,[Bind(Prefix=“models”)]IEnumerable updatedPeople)
{
//用更新的数据做一些事情
}
以下是我的网格设置:
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();
Html.Kendo()
.Grid()
.姓名(“学生”)
.Sortable(设置=>settings.Enabled(false))
.Filterable(设置=>settings.Enabled(false))
.resizeable(resize=>resize.Columns(true))
.Scrollable(设置=>settings.Enabled(true))
.HtmlAttributes(新的{style=“font size:85%;”})
.列(列=>
{
columns.Bound(o=>o.StudentId).Title(“StudentId”).Hidden();
columns.Bound(o=>o.Name).Title(“学生名”).Width(200);
columns.Bound(o=>o.teacher).Title(“教师”)
.ClientTemplate(“#=data.teacher?teacher.teacherName:”)。宽度(150)。可筛选(false);
})
.DataSource(DataSource=>DataSource.Ajax()
.Batch(真)
.ServerOperation(错误)
.Model(Model=>
{
model.Id(c=>c.StudentId);
model.Field(c=>c.teacher);
})
.Events(Events=>Events.Error(“Field_onError”))
.Read(Read=>Read.Action(“\u AjaxGetFields”,“Student”))
.Update(“学生”)
.销毁(“学生”)
.Events(Events=>Events.DataBound(“Fields\u onDataBound”)
.Change(“onFieldSelect”)
.编辑(“onfieldit”)
)
.工具栏(命令=>
{
commands.Save().HtmlAttributes(新的{id=“saveField”});
})
.Scrollable(Scrollable=>Scrollable.Height(“375px”))
.可选()
.Editable(editing=>editing.Mode(Kendo.Mvc.UI.GridEditMode.InCell)).Render();
所以我在想,因为我可以完美地录制17张唱片,但一旦它达到18张或更多,它就会崩溃,我需要修改的地方一定有一些限制或最大值
剑道网格是否对其当时可以发送回控制器的行数有限制
是否有可能存在某种MVC、IE或Web服务器设置限制了这一点?或者Jquery中需要设置的内容?我终于找到了解决方案。这可以标记为已回答 我需要将此添加到我的web.config:
<appSettings>
<add key="aspnet:MaxHttpCollectionKeys" value="3000"/>