我正在尝试使端点在新的.NET Core Web API 2.0(2.1.4)项目中工作。我无法以我想要的方式查询此端点控制器方法。
[HttpGet]
[Route("api/event/get"]
public List<EventResult> GetEventByNameDateRange([FromQuery]string name,
[FromQuery]string startDate,
[FromQuery]string endDate)
{
return EventRepository.GetEvents(name, startDate, endDate);
}
这或多或少是我的设置方式。我尝试了几种不同的变体,主要是与Route属性有关。使用上面的这段代码,它完全忽略了Route,使用路径api / event / get无效。另外,我无法将参数作为查询字符串(即“ api/event?name=library opening&startDate=.....
”)传递。在这两种情况下,该方法均未命中(调试),并且响应为200(确定)为value
。
api/event/library openings/2017-01-01/2018-12-31/
是起作用的。我意识到这是“默认值”,但我不想以这种方式传递参数。
答案 0 :(得分:1)
谁有两个大拇指却忽略了一些愚蠢的事情?这个家伙。
上面的代码是正确的,并且按预期运行,其参数通过URI的查询字符串输入。
与Visual Studio不同,当您停止并重新启动解决方案时,Visual Studio for Mac不会自动重建。
使用上面的代码,它完全忽略了路由
是的,因为编译后的代码并没有改变doofus!