我正在使用Asp.net Web Api生成的默认模板.我正在使用Get()部分:
// GET api/values
public IEnumerable<string> Get()
{
return new string[] { "value1", "value2" };
}
Run Code Online (Sandbox Code Playgroud)
出于某种原因,我认为访问查询字符串的唯一方法就是创建一个输入字符串变量.所以我创建了另一个函数(我做的唯一更改)到生成的默认控制器:
public IEnumerable<string> Get(string queryString)
{
return new string[] { "value3", "value4" };
}
Run Code Online (Sandbox Code Playgroud)
我在两种方法中都设置了一个断点,但即使我添加一个查询字符串,它总是会转到没有参数的函数.所以,如果我去http://mybaseurl/api/values?foo=f
它仍然是Get()而不是get(string queryString).它不像我想的那样工作吗?我知道我可以使用Get()函数访问查询字符串Request.RequestUri.ParseQueryString();但是如果可能的话我更喜欢将它分开.