我有一个ASP.NET Web API(版本4)REST服务,我需要传递一个整数数组.
这是我的行动方法:
public IEnumerable<Category> GetCategories(int[] categoryIds){
// code to retrieve categories from database
}
Run Code Online (Sandbox Code Playgroud)
这是我尝试过的URL:
/Categories?categoryids=1,2,3,4
Run Code Online (Sandbox Code Playgroud) 我是C#.net MVC的新手,我正在尝试添加FullCalendar到MVC应用程序.
该FullCalendar脚本自动添加?start={}&end={}到URL ...这很好,但我不知道如何querystring在控制器中使用变量.
我在Webforms应用程序中使用的方法不起作用.我需要添加到控制器以访问querystring变量?
我正在使用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();但是如果可能的话我更喜欢将它分开.