У меня есть функция, сходная по структуре с этим:
[HttpGet]
public HttpResponseMessage GetValuesForList(List<int> listOfIds)
{
/* create model */
foreach(var id in listOfIds)
model.Add(GetValueForId(id)
/* create response for model */
return response;
}
Однако, когда я делаю запрос Get для метода:
{{domain}}/Controller/GetValuesForList?listOfIds=1&listOfIds=2
Я получаю сообщение об ошибке при отладке, указывающей, что listOfIds
имеет значение null. В нашем контроллере у нас есть множество общедоступных методов HttpGet, которые работают нормально, и при изменении параметра на один int он работает. Я попытался изменить тип параметра на int[]
и IEnumerable<int>
тоже, но никаких изменений.
Однако при изменении вызова на HttpPost и передачи списка в виде значения x-www-form-urlencoded метод работает.
Можно ли передать список методу Get, или мне придется использовать Post? Поскольку это не фактически метод post (поскольку он возвращает модель значений JSON и ничего не сохраняется на сервере).