gpt4 book ai didi

asp.net-mvc - Telerik MVC 网格 : Ajax DataBinding posts additional parameter?

转载 作者:行者123 更新时间:2023-12-04 05:46:46 25 4
gpt4 key购买 nike

我创建了一个支持编辑多个实体的页面。
这个页面被称为:http://localhost/Personnel/EditMultiple?id=2944&id=7
在此页面上有一个 GridView,它应该在网格中列出这些人员。
该网格定义如下:

<% Html.Telerik().Grid<Web.Models.PersonnelMiniVM>()
.Columns(columns =>
{
columns.Bound(p => p.Name);
})
.DataBinding(d => d.Ajax().Select("_GetPersonnelByIds", "Personnel", new { personnelIds = string.Join(",", Model.PersonnelIds) }))
.Pageable(page => page.PageTo(Model.Page))
.Sortable(sorting => sorting.OrderBy(sortOrder => sortOrder.Add(p => p.Name)))
.Render();
%>

但是当我查看发布到 Personnel Controller 的 URL 时,它就像:
http://localhost/Personnel/_GetPersonnelByIds/2944%2c7?personnelIds=7%2C2944&Personnel-size=5

我不明白的是为什么 2944%2c7 附加,当 URL 太长时,这也会给我一个 401 错误。

Global.asax 中定义的路由是这样的:
routes.MapRoute(
"Default",
"{controller}/{action}/{id}",
new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);

如何解决这个问题?

最佳答案

看到这个:

http://www.telerik.com/community/forums/aspnet-mvc/grid/mvc3-grid-control-ajax-bound-select-url-has-extra-route-values.aspx



解决方法是清除 id , 喜欢:
.DataBinding(d => d.Ajax().Select("_GetPersonnelByIds", "Personnel", new { id= "", personnelIds = string.Join(",", Model.PersonnelIds) }))

关于asp.net-mvc - Telerik MVC 网格 : Ajax DataBinding posts additional parameter?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10579957/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com