fix : affichage questions
continuous-integration/drone/push Build is passing Details

pull/38/head
Maxence GUITARD 1 year ago
parent a1b99f9cb7
commit 6ac3ecabed

@ -1,21 +1,21 @@
using Microsoft.AspNetCore.Components; using Microsoft.AspNetCore.Components;
using Blazorise.DataGrid; using Blazorise.DataGrid;
using Blazor.ViewClasses; using Blazor.ViewClasses;
using Blazor.Modals; using Blazor.Modals;
using Blazor.Models; using Blazor.Models;
using Blazored.LocalStorage; using Blazored.LocalStorage;
using Blazored.Modal.Services; using Blazored.Modal.Services;
using Blazor.Modals; using Blazor.Modals;
using Blazor.Services; using Blazor.Services;
using Blazored.Modal; using Blazored.Modal;
using Blazored.Modal; using Blazored.Modal;
namespace Blazor.Pages.Admins; namespace Blazor.Pages.Admins;
public partial class Administrators public partial class Administrators
{ {
public List<Administrator> administrators; public List<Administrator> administrators;
private int totalItem; private int totalItem;
[CascadingParameter] [CascadingParameter]
public IModalService Modal { get; set; } public IModalService Modal { get; set; }
@ -28,29 +28,29 @@ public partial class Administrators
[Inject] [Inject]
public ILocalStorageService LocalStorage { get; set; } public ILocalStorageService LocalStorage { get; set; }
[Inject] [Inject]
public HttpClient Http { get; set; } public HttpClient Http { get; set; }
[Inject] [Inject]
public NavigationManager NavigationManager { get; set; } public NavigationManager NavigationManager { get; set; }
private async Task OnReadData(DataGridReadDataEventArgs<Administrator> e) private async Task OnReadData(DataGridReadDataEventArgs<Administrator> e)
{ {
if (e.CancellationToken.IsCancellationRequested) if (e.CancellationToken.IsCancellationRequested)
{ {
return; return;
} }
// When you use a real API, we use this follow code // When you use a real API, we use this follow code
//var response = await Http.GetJsonAsync<Item[]>( $"http://my-api/api/data?page={e.Page}&pageSize={e.PageSize}" ); //var response = await Http.GetJsonAsync<Item[]>( $"http://my-api/api/data?page={e.Page}&pageSize={e.PageSize}" );
var response = (await Http.GetFromJsonAsync<Administrator[]>($"{NavigationManager.BaseUri}fake-administrator.json")).Skip((e.Page - 1) * e.PageSize).Take(e.PageSize).ToList(); var response = (await Http.GetFromJsonAsync<Administrator[]>($"{NavigationManager.BaseUri}fake-administrator.json")).Skip((e.Page - 1) * e.PageSize).Take(e.PageSize).ToList();
if (!e.CancellationToken.IsCancellationRequested) if (!e.CancellationToken.IsCancellationRequested)
{ {
totalItem = (await Http.GetFromJsonAsync<List<Administrator>>($"{NavigationManager.BaseUri}fake-administrator.json")).Count; totalItem = (await Http.GetFromJsonAsync<List<Administrator>>($"{NavigationManager.BaseUri}fake-administrator.json")).Count;
administrators = new List<Administrator>(response); // an actual data for the current page administrators = new List<Administrator>(response); // an actual data for the current page
} }
} }
protected override async Task OnAfterRenderAsync(bool firstRender) protected override async Task OnAfterRenderAsync(bool firstRender)
@ -89,5 +89,5 @@ public partial class Administrators
// Reload the page // Reload the page
NavigationManager.NavigateTo("administrators", true); NavigationManager.NavigateTo("administrators", true);
} }
} }

@ -10,6 +10,7 @@ using ChoETL;
using Microsoft.AspNetCore.Components.Forms; using Microsoft.AspNetCore.Components.Forms;
using Blazor.Modals; using Blazor.Modals;
using Blazored.Modal; using Blazored.Modal;
using Blazor.Pages.Admins;
namespace Blazor.Pages.Questions; namespace Blazor.Pages.Questions;
@ -85,12 +86,12 @@ public partial class Questions
} }
// When you use a real API, we use this follow code // When you use a real API, we use this follow code
//var response = await Http.GetFromJsonAsync<ChaptersModel[]>( $"https://trusting-panini.87-106-126-109.plesk.page/api/chapters?page={e.Page}&pageSize={e.PageSize}" ); //var response = await Http.GetJsonAsync<Item[]>( $"http://my-api/api/data?page={e.Page}&pageSize={e.PageSize}" );
var response = Http.GetFromJsonAsync<Question[]>($"https://trusting-panini.87-106-126-109.plesk.page/api/chapters").Result; var response = (await Http.GetFromJsonAsync<Question[]>($"{NavigationManager.BaseUri}fake-question.json")).Skip((e.Page - 1) * e.PageSize).Take(e.PageSize).ToList();
if (!e.CancellationToken.IsCancellationRequested) if (!e.CancellationToken.IsCancellationRequested)
{ {
totalQuestion = (await LocalStorage.GetItemAsync<List<Question>>("data")).Count; totalQuestion = (await Http.GetFromJsonAsync<List<Question>>($"{NavigationManager.BaseUri}fake-question.json")).Count;
questions = new List<Question>(response); // an actual data for the current page questions = new List<Question>(response); // an actual data for the current page
} }
} }

Loading…
Cancel
Save