@page "/events" @attribute [Authorize] @using Microsoft.EntityFrameworkCore @using WebApp.Models @using WebApp.Components.Shared.Components @inject AppDbContext Context @inject IDialogService DialogService @inject ISnackbar Snackbar Create New Printable Descriptions Career Mapping @context.Item.Name [@context.Item.MinTeamSize - @context.Item.MaxTeamSize] @code { MudDataGrid _dataGrid = null!; private bool _isLoading = true; private async Task> ServerReload(GridState state) { _isLoading = true; try { var query = Context.Events.OrderBy(e => e.Name).Where(state.FilterDefinitions).OrderBy(state.SortDefinitions); var totalItems = await query.CountAsync(); var pagedData = await query.Skip(state.Page * state.PageSize).Take(state.PageSize).ToArrayAsync(); return new GridData { TotalItems = totalItems, Items = pagedData }; } finally { _isLoading = false; } } private async Task DeleteEventDefinition(EventDefinition evt) { //_isRowBlocked = true; var result = await DialogService .ShowMessageBox("Delete Event", (MarkupString)$"Are you sure want to delete {evt.Name}? This cannot be undone.", yesText:"Yes", noText:"Cancel"); if (result == true) { Context.Events.Remove(evt!); await Context.SaveChangesAsync(); Snackbar.Add($"Delete event: Delete of Event {evt.Name}", Severity.Info); } //_isRowBlocked = false; StateHasChanged(); await _dataGrid.ReloadServerData(); } }