using Blazorise.DataGrid; using Microsoft.AspNetCore.Components; using TutoBlazer.Models; namespace TutoBlazer.Pages { public partial class List { private List items; private int totalItem; [Inject] public HttpClient Http { get; set; } [Inject] public NavigationManager NavigationManager { get; set; } private async Task OnReadData(DataGridReadDataEventArgs e) { if (e.CancellationToken.IsCancellationRequested) { return; } // When you use a real API, we use this follow code //var response = await Http.GetJsonAsync( $"http://my-api/api/data?page={e.Page}&pageSize={e.PageSize}" ); var response = (await Http.GetFromJsonAsync($"{NavigationManager.BaseUri}fake-data.json")).Skip((e.Page - 1) * e.PageSize).Take(e.PageSize).ToList(); if (!e.CancellationToken.IsCancellationRequested) { totalItem = (await Http.GetFromJsonAsync>($"{NavigationManager.BaseUri}fake-data.json")).Count; items = new List(response); // an actual data for the current page } } } }