中 学习ASP.NET Core Blazor编程系列十——路由( 二 )

3.在Visual Studio 2022的菜单栏上,找到“调试à开始调试”或是按F5键,Visual Studio 2022会生成BlazorAppDemo应用程序,并在浏览器中打开Home页面,我们我们使用鼠标左键点击左边菜单上的“图书列表”菜单项 , 浏览器会显示我们修改过的图书列表页面,将鼠标指针悬停在“编辑”链接上可以查看,链接背后的URL值 , 我们会在浏览器的左下角看到https://localhost:7110/AddBook/3这样的地址 。如下图 。
【中 学习ASP.NET Core Blazor编程系列十——路由】

中 学习ASP.NET Core Blazor编程系列十——路由

文章插图
4.在浏览器中,使用鼠标左键点击我们要修改的图书信息的“编辑”按钮,浏览器会自动跳转到AddBook页面,并将我们需要修改的图书信息显示出来 。如下图 。
中 学习ASP.NET Core Blazor编程系列十——路由

文章插图
七、路由约束路由约束强制在路由段和组件之间进行类型匹配 。
在以下示例中,到AddBook组件的路由仅在以下情况下匹配:
  • 请求 URL 中存在Id 路由段 。
  • Id 段是一个整数 (int) 类型 。
Pages/AddBook.razor:@page "/AddBook/{Id:int}"<h1>Book Id: @Id</h1>@code {[Parameter]public int Id { get; set; }}备注
路由约束不适用于查询字符串值 。
下表中显示的路由约束可用 。有关与固定区域性匹配的路由约束 , 请参阅表下方的警告了解详细信息 。
约束
示例
匹配项示例
固定条件区域性 匹配
bool
{active:bool}
true, FALSE

datetime
{dob:datetime}
2016-12-31, 2016-12-31 7:32pm

decimal
{price:decimal}
49.99, -1,000.01

double
{weight:double}
1.234, -1,001.01e8

float
{weight:float}
1.234, -1,001.01e8

guid
{id:guid}
CD2C1638-1638-72D5-1638-DEADBEEF1638,
{CD2C1638-1638-72D5-1638-DEADBEEF1638}

int
{id:int}
123456789, -123456789

long
{ticks:long}
123456789, -123456789

警告
验证 URL 的路由约束并将转换为始终使用固定区域性的 CLR 类型(例如 int 或 DateTime) 。这些约束假定 URL 不可本地化 。

推荐阅读