1

我正在尝试使用以下签名创建一个 WebApi 操作方法:

[System.Web.Http.HttpPost]
public object Execute([FromUri] string command, [FromUri] string method, [FromBody] IDictionary<string, JToken> arguments)

但是,当我用请求点击此方法时,参数永远不会正确绑定(两个 URI 字段确实如此)。ModelState 在第一个字符处显示 Json.NET 解析错误。我已经尝试过看起来像:id=50arguments={ "id": 50 }. 如何制定我的请求以允许 WebApi 正确绑定我的参数?

4

1 回答 1

3

您不需要请求正文中的“id=”或“arguments=”。您应该能够发送如下所示的内容:

{"key1": 4, "key2": 50, "key3": {"member1": "value"}}

让它工作。然后字典将包含 key1:值为 4 的 JValue,key2:值为 50 的 JValue,key3:值为“value”的 member1 成员的 JObject。

于 2013-03-18T21:28:25.127 回答