.NET Core Web API 2.0和[FromQuery]

时间:2018-07-07 01:49:02

标签: asp.net-core-webapi

我正在尝试使端点在新的.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/是起作用的。我意识到这是“默认值”,但我不想以这种方式传递参数。

1 个答案:

答案 0 :(得分:1)

谁有两个大拇指却忽略了一些愚蠢的事情?这个家伙。

上面的代码是正确的,并且按预期运行,其参数通过URI的查询字符串输入。

与Visual Studio不同,当您停止并重新启动解决方案时,Visual Studio for Mac不会自动重建。

  

使用上面的代码,它完全忽略了路由

是的,因为编译后的代码并没有改变doofus!