Я пытаюсь создать метод WebAPI действий со следующей подписью:WebAPI связать тело словаря Json
[System.Web.Http.HttpPost]
public object Execute([FromUri] string command, [FromUri] string method, [FromBody] IDictionary<string, JToken> arguments)
Однако, когда я ударил этот метод с запросами, аргументы никогда не связывает правильно (два поля URI делать). ModelState показывает ошибку разбора Json.NET при первом символе. Я пробовал запросы органов, которые выглядят так: id=50
и arguments={ "id": 50 }
. Как мне сформулировать мой запрос, чтобы WebApi правильно привязывал мои параметры?
Словари состоят из keyValuePairs, таким образом, в json world - массив объектов, каждый из которых имеет свойство Key и Value, поэтому IDictionary привязывает requries json что-то вроде 'arguments = [{Key:" id ", Value: 50}, {Key: "другой", стоимость: 100}] '. Может быть немного, если вы сериализовали словарь как объект JSON, вы бы поняли, что я имею в виду. –
AaronLS