发送要作为Dictionary 接收的JSON数组

我有一个带有以下签名的方法:

public ActionResult RenderFamilyTree(string name, Dictionary children) 

我试图使用jQuery从javascript中调用它,如下所示:

 $('#div_render').load( "", { 'name': 'Raul', [ {'key':'key1','value':'value1'}, {'key':'key2','value':'value2'} ] }, function() { alert('Loaded'); } ); 

我错过了一些让它起作用的东西吗?

javascript对象文字中存在语法错误。 数组中的两个键/值对应与“name”一起分配给命名属性(例如:“myProperty”)。

 $('#div_render').load( "<%= Url.Action("RenderFamilyTree") %>", { name: 'Raul', myProperty: [ {key:'key1',value:'value1'}, {key:'key2',value:'value2'} ] }, function() { alert('Loaded'); } 

);

默认模型绑定器支持高级方案,例如绑定到列表和词典 。 为此,您需要发送以下请求:

 children[0].Key=key1&children[0].Value=value1& children[1].Key=key2&children[1].Value=value2& name=Raul 

因此,您可以编写自己的自定义绑定器或以这种方式格式化查询参数。 我不确定jQuery是否支持开箱即用。