С помощью WebAPI 2.1 я всегда должен украшать методы с помощью [HttpGet] , put и т. Д.?

#asp.net #asp.net-web-api

#asp.net #asp.net-web-api

Вопрос:

У меня есть следующий метод действия, который я вызываю с помощью GET:

 [Route("Retrieve/{cityStatusId:int}")]
public async Task<IHttpActionResult> Retrieve(int cityStatusId) {

}
  

Когда я вызываю это, я получаю сообщение:

 message=The requested resource does not support http method 'GET'.
  

С WebAPI 2.1 мне все еще нужно украшать все мои методы с помощью [HttpGet] . Я думал, что это больше не является обязательным требованием?

Комментарии:

1. Соглашение заключается в том, что имя вашего действия начинается с HTTP-глагола. Попробуйте переименовать свое действие Get вместо Retrieve .

Ответ №1:

Переименуйте метод с префиксом «Get»,

например

 public async Task<IHttpActionResult> GetCityStatus(int cityStatusId) {}