我的 asp.net 核心控制器方法有什么问题?
what's wrong with my asp.net core controller method?
在我的 asp.net 核心应用程序中,我们在 App StartUp 配置中使用默认的 MVC 路由。
然后在我们的控制器中,我们的 api 端点方法之一有以下代码:
[HttpGet]
[Route("services/task/{taskid?}/{taskmessage?}")]
[Produces("text/html")]
public async Task<ActionResult> TaskMessage(string taskId = null, string queue = null, string taskmessage = null)
然后我们尝试通过仅传递任务消息来调用端点,如下所示URL:
http://localhost:12345/api/services/task?taskmessage=hello
但是,它在这里不起作用。任何人都可以让我知道我哪里错了吗?它在我们的 ASP.Net 项目中工作,但是一旦我们迁移到 ASP.NET 核心,它就无法工作了。
顺便说一句,我们目前使用的 ASP.NET core F/W 版本是 ASP.NET Core 2.1,如果重要的话。
正如对类似(但不同)问题的回答所述:
[FromHeader], [FromQuery], [FromRoute], [FromForm]: Use these to specify the exact binding source you want to apply.
他们引用了这个 link:https://docs.microsoft.com/en-us/aspnet/core/mvc/models/model-binding?view=aspnetcore-2.1,其中讨论了各种模型绑定方法。
在我的 asp.net 核心应用程序中,我们在 App StartUp 配置中使用默认的 MVC 路由。
然后在我们的控制器中,我们的 api 端点方法之一有以下代码:
[HttpGet]
[Route("services/task/{taskid?}/{taskmessage?}")]
[Produces("text/html")]
public async Task<ActionResult> TaskMessage(string taskId = null, string queue = null, string taskmessage = null)
然后我们尝试通过仅传递任务消息来调用端点,如下所示URL:
http://localhost:12345/api/services/task?taskmessage=hello
但是,它在这里不起作用。任何人都可以让我知道我哪里错了吗?它在我们的 ASP.Net 项目中工作,但是一旦我们迁移到 ASP.NET 核心,它就无法工作了。
顺便说一句,我们目前使用的 ASP.NET core F/W 版本是 ASP.NET Core 2.1,如果重要的话。
正如对类似(但不同)问题的回答所述:
[FromHeader], [FromQuery], [FromRoute], [FromForm]: Use these to specify the exact binding source you want to apply.
他们引用了这个 link:https://docs.microsoft.com/en-us/aspnet/core/mvc/models/model-binding?view=aspnetcore-2.1,其中讨论了各种模型绑定方法。