@page "/user/updateuser/{id}" @attribute [Authorize] @inject IAlertService AlertService @inject IUserService UserService @inject NavigationManager navManager @inject Blazorcrud.Client.Shared.PageHistoryState PageHistoryState <h1>Edit User</h1> <br/> <Form ButtonText="Update User" user="@user" loading="@loading" OnValidSubmit="@UpdateUser" /> @code { bool loading = false; [Parameter] public string Id { get; set; } User user = new User(); protected async override Task OnParametersSetAsync() { user = await UserService.GetUser(int.Parse(Id)); } async Task UpdateUser() { loading = true; try { await UserService.UpdateUser(user); AlertService.Success("User updated successfully", keepAfterRouteChange: true); if (PageHistoryState.CanGoBack()){ navManager.NavigateTo(PageHistoryState.GetGoBackPage()); } else{ navManager.NavigateTo("/user/1"); } } catch (Exception ex) { AlertService.Error(ex.Message); loading = false; StateHasChanged(); } } }