具有自定义名称的Web API控制器触发错误

时间:2020-05-05 10:46:26

标签: asp.net-core asp.net-web-api asp.net-core-webapi

嗨,我是Web API的初学者。所以我创建了一个像这样的简单功能测试。

  [HttpGet]
    public ActionResult<IEnumerable<string>> Get()
    {
        return new string[] { "value1", "value2" };
    }
    [HttpGet]
    [Route("api/[controller]/test")]
    public string[] test()
    {
        return new string[] { "test1","test2" };
    }

在这里,我使用路由规范创建了一个自定义方法测试。但是当我尝试 https://localhost:44389/api/values/test 时,它显示为{"errors":{"id":["The value 'test' is not valid."]},"title":"One or more validation errors occurred.","status":400,"traceId":"8000001f-0002-e900-b63f-84710c7967bb"}

请告诉我知道如何解决此问题。

1 个答案:

答案 0 :(得分:1)

如果要忽略控制器上的路由,则需要使用斜杠前缀:

[Route("/api/[controller]/test")]

否则,您的路线将类似于/api/values/api/values/test

相关问题