Quantcast
Channel: Active questions tagged blazor - Stack Overflow
Viewing all articles
Browse latest Browse all 4839

NavigationManager.NavigateTo() in Blazor web app?

$
0
0

I cannot get NavigationManager.NavigateTo("/servers") to work in my project. The /servers endpoint is valid with a @page "/servers". I've tried everything and cannot get it to work. I get an Exception of type 'Microsoft.AspNetCore.Components.NavigationException' was thrown.

I've tried other endpoints I know exist but keep getting NavigationException. NavigationManager.NavigateTo("/servers"); should take me to the routable servers component after clicking submit and saving my data.

@inject NavigationManager NavigationManager;NavigationManager.NavigateTo("/servers");

@page "/server/{id:int}"@inject NavigationManager NavigationManager;<h3>Edit Server</h3><br /><br />@if (server != null){<EditForm Model=server FormName="formServer" OnValidSubmit="Submit"><DataAnnotationsValidator></DataAnnotationsValidator><ValidationSummary></ValidationSummary><InputNumber @bind-Value="server.ServerId" hidden></InputNumber><div class="row mb-3"><div class="col-2"><label class="col-form-label">Name</label></div><div class="col-6"><InputText @bind-Value=server.Name></InputText></div></div><div class="row mb-3"><div class="col-2"><label class="col-form-label">City</label></div><div class="col-6"><InputText @bind-Value=server.City></InputText></div></div><div class="row mb-3"><div class="col-2"><label class="col-form-label">Online</label></div><div class="col-6"><InputCheckbox @bind-Value=server.IsOnline></InputCheckbox></div></div><br /><button class="btn btn-primary" typeof="submit">Update</button>&nbsp;<a href="/servers" class="btn btn-primary">Close</a></EditForm>}@code {    [Parameter]    public int id { get; set; }    [SupplyParameterFromForm]    private Server? server { get; set; }    protected override void OnParametersSet()    {        server ??= ServersRepository.GetServerById(this.id);    }    private void Submit()    {        if (server != null)            ServersRepository.UpdateServer(server.ServerId, server);        try        {            NavigationManager.NavigateTo("/servers");        }        catch (Exception ex)        {            Console.WriteLine($"Error Message: {ex.Message}");            Console.WriteLine($"Inner Error Message: {ex.InnerException}");        }    }}

Component I'm going to:

@page "/servers"<h3>Servers</h3><br /><br /><div class="container-fluid text-center"><div class="row w-60">        @foreach (var city in cities)        {<div class="col"><div class="card"><img src="@($"/images/{city}.png")" class="card-img-top" alt="..."><div class="card-body"><a href="/server/edit" class="btn btn-primary">@city</a></div></div></div>        }</div></div><ul>    @foreach (var server in servers)    {<li>            @server.Name in @server.City is<span style="color:@((server.IsOnline ? "Green" : "Red"))">                @(server.IsOnline ? "Online" : "Offline")<a href="/server/@server.ServerId" class="btn btn-link">Edit</a></span></li>    }</ul>@code {    private List<Server> servers = ServersRepository.GetServersByCity("Toronto");    private List<string> cities = CitiesRepository.GetCities();}

Viewing all articles
Browse latest Browse all 4839

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>