具有多个路由参数的 ASP.NET Core Razor 页面层次结构

Posted

技术标签:

【中文标题】具有多个路由参数的 ASP.NET Core Razor 页面层次结构【英文标题】:ASP.NET Core Razor Pages hierarchy with multiple route parameters 【发布时间】:2019-04-17 21:00:30 【问题描述】:

我正在尝试使用 Razor Pages 创建一个始终位于“库存”中的“项目”页面。

我不知道的是如何将库存的id提供给物品页面

假设我有以下页面结构

Pages Inventories Items

我假设我可以有一个类似于/Inventories/id/Items/ 然后/Inventories/id/Items/itemid 的路线来显示某个项目,但我不确定如何。还是有更好的方法?

【问题讨论】:

【参考方案1】:

在 asp.net core 2.1 Razor Pages 中,您可以使用 Custom Routes 指定到页面的自定义路由。

@page "/Inventories/id:int/Items/itemid:int"

你可以通过使用获取 id

public async Task<IActionResult> OnGetAsync(int? id, int? itemid)

【讨论】:

谢谢。这正是我一直在寻找的。我试图这样做,但现在我发现我错过了一些细节。

以上是关于具有多个路由参数的 ASP.NET Core Razor 页面层次结构的主要内容,如果未能解决你的问题,请参考以下文章

具有多个构造函数的 ASP.NET Core 依赖注入

具有多个范围的 ASP.NET Core RequireClaim“范围”

ASP.NET Core 6框架揭秘实例演示[30]:利用路由开发REST API

使用 Azure 地理冗余 (RA-GRS) 表存储时,如何更新 ASP.NET Core 中的 TableServiceClient 以指向次要区域?

如何在 ASP.NET CORE 3.0 中配置路由以使用带有 [FromQuery] 参数的重载 [HttpGet] 方法?

ASP.NET Core 3.1 路由(Route、ActionName)本地化怎么做?