在ASP.NET Core 3中,可以使用[Route]特性和[HttpGet]、[HttpPost]等特性来定义路由和Action方法。下面是一个示例解决方案,包含了一个控制器和两个Action方法。
using Microsoft.AspNetCore.Mvc;
namespace YourNamespace.Controllers
{
[Route("api/[controller]")]
[ApiController]
public class YourController : ControllerBase
{
[HttpGet] // 定义GET请求的路由
public IActionResult Get()
{
// 处理GET请求的逻辑
return Ok("GET request");
}
[HttpPost] // 定义POST请求的路由
public IActionResult Post()
{
// 处理POST请求的逻辑
return Ok("POST request");
}
}
}
在上面的示例中,[Route("api/[controller]")]定义了控制器的路由,其中[controller]会被替换为控制器名称(这里是YourController)。因此,控制器的完整路由是/api/YourController。
然后,我们使用[HttpGet]和[HttpPost]特性来分别定义GET和POST请求的路由。在这个示例中,GET请求的完整路由是/api/YourController,而POST请求的完整路由也是/api/YourController。
你也可以在路由中指定参数,例如[Route("api/[controller]/{id}")],其中{id}是一个占位符,可以在Action方法的参数中使用。例如,public IActionResult Get(int id)。
请注意,以上示例是基于默认路由配置的。你可以根据自己的需求进行修改和扩展。