У меня проблема, похожая на ASP.NET MVC 4 RC Web API Параметр Binding Issue, но я пытаюсь решить ее с помощью атрибута [FromBody].
Fiddler сообщает следующий запрос (за исключением ненужных битов, таких как строка агента пользователя)
PUT http://localhost:82/api/account/shoppinglistitems HTTP/1.1
Host: localhost:82
Connection: keep-alive
Content-Length: 11
Origin: http://localhost:3000
Content-Type: application/x-www-form-urlencoded
Accept: application/json, text/javascript, */*; q=0.01
query=apple
Мое действие контроллера
[HttpPut]
public ShoppingListItemWebModel CreateShoppingListItem([FromBody]string query) {
// query is null
}
Я мог бы обернуть параметр сложным типом, но это похоже на взломать проблему. Или я мог бы поместить запрос в URI, но это не соответствует шаблону остальной части API. Можно ли это сделать так? Если да, то где моя ошибка?