我正在使用 C# Web API 来接收具有选择多个表单的帖子。
我在 Web API 方法中的模型类似于:
{Model: { UserName: "Test", Groups: [ {Id:123}, {Id: 2}]}}
换句话说,我的模型是一个包含一些字段的类,也是一个复杂类型的数组。
如果发布的表单数据是:WebAPI 可以正常工作:
UserName:Test
Groups[0][Id]:123
Groups[1][Id]:2
但是,如果我用我序列化表单,$(this).serialize()
我会得到类似的东西:
UserName:Test
Groups[][Id]:123
Groups[][Id]:2
哪个 WebAPI 不能正确处理。
这将选择定义为:
<select name="Groups[][Id]" >...</select>
我尝试了其他方法来定义选择,但我无法完成。
我能够通过基于表单元素构建一个对象并将对象传递给 ajax 而不是 ajax 来解决它$(this).serialize
,但它是一个丑陋的黑客。
WebAPI 是否以某种方式支持接收从表单发布的模型中的数组属性?
谢谢。