在ASP.NET Core 6中,可以使用属性路由来在端点中设置变量。以下是一个使用属性路由设置变量的示例代码:
[HttpGet("{id:int}")]
public IActionResult Get(int id)
{
// Do something with id
return Ok();
}
在上面的代码中,属性路由定义了一个参数名为“id”的变量,并将其设置为int类型。因此,当请求的URL中包含一个名为“id”的整数参数时,ASP.NET Core将自动将其映射到这个变量上。
如果想使用命名路由来设置变量,可以在Startup.cs文件中进行如下配置:
app.UseEndpoints(endpoints =>
{
endpoints.MapControllerRoute(
name: "myroute",
pattern: "/my-endpoint/{id}",
defaults: new { controller = "MyController", action = "MyAction" });
});
在上面的代码中,我们为一个名为“my-endpoint”的端点定义了一个命名路由,并将其中的“{id}”设置为变量。然后,在MyController类的MyAction方法中,可以通过在参数列表中添加名为“id”的参数来访问它。
public IActionResult MyAction(int id)
{
// Do something with id
return Ok();
}
上一篇:ASP.NETCore6中是否可以将一个控制器注入到另一个控制器中?
下一篇:Asp.netcore6中使用Html.DropDownListFor时出现System.NullReferenceException异常