diff --git a/Sources/MyFirstBlazor/MyFirstBlazor.csproj b/Sources/MyFirstBlazor/MyFirstBlazor.csproj
index b775b09..6033f3c 100644
--- a/Sources/MyFirstBlazor/MyFirstBlazor.csproj
+++ b/Sources/MyFirstBlazor/MyFirstBlazor.csproj
@@ -6,4 +6,10 @@
enable
+
+
+
+
+
+
diff --git a/Sources/MyFirstBlazor/Pages/List.razor b/Sources/MyFirstBlazor/Pages/List.razor
index 48ab1e8..27fdf9c 100644
--- a/Sources/MyFirstBlazor/Pages/List.razor
+++ b/Sources/MyFirstBlazor/Pages/List.razor
@@ -1,11 +1,29 @@
@page "/list"
+@using MyFirstBlazor.Models;
+
List
-@if (items != null)
-{
- foreach (var item in items)
- {
- @item.Id
- }
-}
\ No newline at end of file
+
+
+
+
+
+
+
+ @(string.Join(", ", ((Item)context).EnchantCategories))
+
+
+
+
+ @(string.Join(", ", ((Item)context).RepairWith))
+
+
+
+
diff --git a/Sources/MyFirstBlazor/Pages/List.razor.cs b/Sources/MyFirstBlazor/Pages/List.razor.cs
index 67a872f..bb67b0d 100644
--- a/Sources/MyFirstBlazor/Pages/List.razor.cs
+++ b/Sources/MyFirstBlazor/Pages/List.razor.cs
@@ -1,21 +1,34 @@
-using Microsoft.AspNetCore.Components;
+using Blazorise.DataGrid;
+using Microsoft.AspNetCore.Components;
using MyFirstBlazor.Models;
-namespace MyFirstBlazor.Pages
+public partial class List
{
- public partial class List
- {
- private Item[] items;
+ private List- ? items;
+
+ private int totalItem;
+
+ [Inject]
+ public HttpClient Http { get; set; }
+
+ [Inject]
+ public NavigationManager NavigationManager { get; set; }
- [Inject]
- public HttpClient Http { get; set; }
+ private async Task OnReadData(DataGridReadDataEventArgs
- e)
+ {
+ if (e.CancellationToken.IsCancellationRequested)
+ {
+ return;
+ }
- [Inject]
- public NavigationManager NavigationManager { get; set; }
+ // 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}FakeData.json")).Skip((e.Page - 1) * e.PageSize).Take(e.PageSize).ToList();
- protected override async Task OnInitializedAsync()
+ if (!e.CancellationToken.IsCancellationRequested)
{
- items = await Http.GetFromJsonAsync
- ($"{NavigationManager.BaseUri}fake-data.json");
+ totalItem = (await Http.GetFromJsonAsync
>($"{NavigationManager.BaseUri}FakeData.json")).Count;
+ items = new List- (response); // an actual data for the current page
}
}
-}
+}
\ No newline at end of file
diff --git a/Sources/MyFirstBlazor/Pages/_Layout.cshtml b/Sources/MyFirstBlazor/Pages/_Layout.cshtml
index a0f515d..6f16388 100644
--- a/Sources/MyFirstBlazor/Pages/_Layout.cshtml
+++ b/Sources/MyFirstBlazor/Pages/_Layout.cshtml
@@ -28,5 +28,9 @@
+
+
+
+