使用name ="array_name []"为表单元素在ASP.NET MVC 2中发布数组

art*_*olk 7 forms asp.net asp.net-mvc-2

美好的一天!

在PHP中,可以使用方括号将name属性分配给输入元素,如下所示:name="my_value[]"并且PHP在服务器端自动将其转换为数组.

这是否可以在ASP.NET MVC中使用?如果没有,有没有办法在ASP.NET MVC中处理一堆复选框?

提前致谢!

Dar*_*rov 13

对的,这是可能的.您可以查看以下有关默认模型绑定器使用的约定的博客文章.


小智 11

确保名称仍然相同,但请继续删除括号.然后,您可以将值添加到数组,如下所示:

string[] values = Request.Form.GetValues("my_value");
foreach (string value in values) {
   ...
}
Run Code Online (Sandbox Code Playgroud)

  • @marcus对我来说`Request.Form.GetValues("my_value")`返回null但是`Request.Form.GetValues("my_value []")`返回值数组,所以看起来你需要保留方括号.+1 anways (3认同)