ASP.NET Core 3.0 端点的等效功能是使用基于终结点路由的端点映射。在 ASP.NET Core 3.0 中,终结点路由是一种新的方式来映射 HTTP 请求到具体的处理程序。下面是一个包含代码示例的解决方法:
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
// ...
app.UseRouting();
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "default",
pattern: "{controller}/{action}/{id?}");
});
// ...
}
[Route("api/[controller]")]
[ApiController]
public class MyController : ControllerBase
{
[HttpGet("{id}")]
public IActionResult Get(int id)
{
// 处理 GET 请求
// 返回结果
}
[HttpPost]
public IActionResult Post([FromBody] MyModel model)
{
// 处理 POST 请求
// 返回结果
}
// 其他动作方法
}
在上面的示例中,Get 方法被映射到 api/my/{id}
的 GET 请求,而 Post 方法被映射到 api/my
的 POST 请求。
通过使用终结点路由,可以更灵活地定义路由模板,并按需选择使用特定的 HTTP 动作方法。此外,终结点路由还提供了更好的性能和请求处理的可扩展性。