@page "/customerpage" @page "/customerpage/{id:int}" @inject ICustomers CustomersService @inject IState StateService

Customer



@foreach (State state in stateList) { }
@code { [Parameter] public int id { get; set; } Customer customer = new Customer(); private List stateList = new(); private List customerList = new(); protected async override Task OnInitializedAsync() { var customers = await CustomersService.GetCustomersAsync(); if (customers != null) { customerList = customers.ToList(); } var states = await StateService.GetStatesAsync(); if (states != null) { stateList = states.ToList(); } if (id > 0) { customer = await CustomersService.GetCustomerAsync(id); } } private void NewCustomer() { customer = new Customer(); StateHasChanged(); } private async void HandleValidSubmit() { id = customer.Id > 0 ? customer.Id : 0; await CustomersService.SaveCustomerAsync(id, customer); if (id == 0) { var customers = await CustomersService.GetCustomersAsync(); if (customers != null) { customerList = customers.ToList(); StateHasChanged(); } } } private async void PopulateForm(ChangeEventArgs e) { int custId = Convert.ToInt32(e.Value); customer = await CustomersService.GetCustomerAsync(custId); StateHasChanged(); } }