---
sidebar_position: 4
title: Add button
---
In order to access your add page, we are going to add a button above our grid.
Open the `Pages/List.razor` file and add the highlighted changes:
```cshtml title="Pages/List.razor"
@page "/list"
@using MyBeautifulAdmin.Models
List
// highlight-start
Ajouter
// highlight-end
@(string.Join(", ", ((Data)context).Roles))
```
## Concept: Routing
### Routing patterns
The `Router` component allows routing to Razor components in a Blazor application. The `Router` component is used in the `App` component of Blazor apps.
```cshtml title="App.razor"
Sorry, there's nothing at this address.
```
When a Razor component (`.razor`) with an `@page` directive is compiled, the generated component class is supplied as a RouteAttribute specifying the component's routing model.
When the app starts, the assembly specified as the `AppAssembly` router is scanned to collect routing information for app components that have a RouteAttribute .
At runtime, the RouteView component:
* Receives all route parameters from the RouteData Router.
* Renders the specified component with its layout, including additional nested layouts.
Components support multiple routing patterns using multiple `@page` directives.
The following sample component loads on requests for `/BlazorRoute` and `/DifferentBlazorRoute`.
```cshtml title="Pages/BlazorRoute.razor"
// highlight-start
@page "/BlazorRoute"
@page "/DifferentBlazorRoute"
// highlight-end
Blazor routing
```
:::info
For URLs to resolve correctly, the application must include a <base> in its `wwwroot/index.html` file (Blazor WebAssembly) or `Pages/_Layout.cshtml` file (Blazor Server) with the application base path specified in the `href` attribute.
:::