gpt4 book ai didi

c# - 我可以假设我通过 POST 发送值的顺序将模型绑定(bind)到 Asp.net MVC 中相同顺序的数组吗?

转载 作者:太空狗 更新时间:2023-10-29 17:57:36 24 4
gpt4 key购买 nike

我正在开发一个允许用户更改项目顺序的屏幕,当用户单击“保存”按钮时,我的 javascript 将查看 <li> 的顺序项目,并按照它找到它们的顺序,它将形成一个具有 id 值的数组并将其发送回我的应用程序。我希望 POST 数据看起来像:

stepIds=5&stepIds=2&stepIds=1

这意味着步骤的顺序是#5,然后是#2,最后是#1。在我的 Asp.Net MVC 应用程序中,我计划通过以下方式捕获它:

public virtual ActionResult Reorder(short[] stepIds) { }

我的问题是,Asp.net MVC 总是会形成 stepIds数组的顺序与 POST 字符串中指定值的顺序相同,还是我需要执行更复杂的 POST 以确保用户选择的顺序是服务器看到的顺序?

最佳答案

不,您不能依赖订单。这是在 ASP.NET 4.0 中实现的方式,它确实会保留顺序,但这可能会在未来的版本中改变。您可以查看带有 Reflector 的 HttpValueCollection.FillFromString 私有(private)方法,了解它是如何实现的。

保证顺序的唯一可靠方法是:

stepIds[0]=5&stepIds[1]=2&stepIds[2]=1

关于c# - 我可以假设我通过 POST 发送值的顺序将模型绑定(bind)到 Asp.net MVC 中相同顺序的数组吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7515540/

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