Можно ли связать модель как с Uri, так и с телом?
Например, учитывая следующее:
routes.MapHttpRoute(
name: "API Default",
routeTemplate: "api/{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
public class ProductsController : ApiController
{
public HttpResponseMessage Put(UpdateProduct model)
{
}
}
public class UpdateProduct
{
int Id { get; set;}
string Name { get; set; }
}
Можно ли создать настраиваемое связующее, чтобы PUT
to
/API/Продукты/1
с телом JSON:
{
"Name": "Product Name"
}
приведет к модели UpdateProduct
, заполненной Id = 1
и Name = "Product Name"
?
Обновление
Я понимаю, что я могу изменить сигнатуру действия на
public HttpResponseMessage Put(int id, UpdateProduct model)
{
}
Однако, как указано в вопросе, я специально хочу привязать к одному объекту модели
Я также разместил этот вопрос на форуме WebApi Codeplex