Skip to content

Routing in Blazor

Basic Routes

razor
@page "/"
@page "/counter"
@page "/users/{id:int}"

Route Parameters

razor
@page "/users/{id:int}"

@code {
    [Parameter]
    public int Id { get; set; }
}

Route Constraints

razor
@page "/users/{id:int}"      // Integer
@page "/users/{name:string}" // String
@page "/date/{date:datetime}" // DateTime
@page "/guid/{id:guid}"      // GUID
razor
@inject NavigationManager Navigation

@code {
    private void Navigate()
    {
        Navigation.NavigateTo("/counter");
    }
}
razor
<NavLink href="" Match="NavLinkMatch.All">Home</NavLink>
<NavLink href="counter">Counter</NavLink>

Not Found Page

razor
<Router AppAssembly="@typeof(App).Assembly">
    <Found Context="routeData">
        <RouteView RouteData="@routeData" />
    </Found>
    <NotFound>
        <p>Page not found</p>
    </NotFound>
</Router>