如何使用参数(例如排序查询或搜索查询)在API控制器中创建GET方法?

时间:2016-08-15 10:21:01

标签: asp.net-mvc asp.net-web-api

我有一个API控制器和GET方法,如下所示:

public IEnumerable<CountryDTO> GetContries(string sortOrder, string searchString)
{
    return countryRepository.GetCos(sortOrder,  searchString);
}

但是当我试图获得url api / countries时 我有一个错误,如: 请求的资源不支持http方法&#39; GET&#39;。

如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

尝试明确标记方法[HttpGet]并对您的方法进行以下更改。

[HttpGet]    
public IEnumerable GetCountries(string sortOrder, string searchString)
{
   return countryRepository.GetCos(sortOrder, searchString).ToList();
}

此外,我建议您在进行更改之前,只需使用SOAPUI或Fiddler等工具测试您的方法。看看你是否能得到答复。这样你就可以确定问题不在方法形成的基础上。

[HttpGet]    
public string GetCountries(string sortOrder, string searchString)
{
   return ("returns list of countries");
}