From 6a9c303965c90faf168002189d54067e7f37592a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Chlo=C3=A9=20MOURGAND?= Date: Tue, 25 Oct 2022 12:01:48 +0200 Subject: [PATCH] ajout de la fin du 1er tp --- Sources/MyFirstBlazor/Models/Item.cs | 15 + Sources/MyFirstBlazor/MyFirstBlazor.sln | 2 +- Sources/MyFirstBlazor/Pages/List.razor | 11 + Sources/MyFirstBlazor/Pages/List.razor.cs | 21 ++ Sources/MyFirstBlazor/Program.cs | 1 + Sources/MyFirstBlazor/Shared/NavMenu.razor | 5 + Sources/MyFirstBlazor/Shared/TestLayout.razor | 23 ++ Sources/MyFirstBlazor/wwwroot/FakeData.json | 290 ++++++++++++++++++ 8 files changed, 367 insertions(+), 1 deletion(-) create mode 100644 Sources/MyFirstBlazor/Models/Item.cs create mode 100644 Sources/MyFirstBlazor/Pages/List.razor create mode 100644 Sources/MyFirstBlazor/Pages/List.razor.cs create mode 100644 Sources/MyFirstBlazor/Shared/TestLayout.razor create mode 100644 Sources/MyFirstBlazor/wwwroot/FakeData.json diff --git a/Sources/MyFirstBlazor/Models/Item.cs b/Sources/MyFirstBlazor/Models/Item.cs new file mode 100644 index 0000000..731bbc3 --- /dev/null +++ b/Sources/MyFirstBlazor/Models/Item.cs @@ -0,0 +1,15 @@ +namespace MyFirstBlazor.Models +{ + public class Item + { + public int Id { get; set; } + public string DisplayName { get; set; } + public string Name { get; set; } + public int StackSize { get; set; } + public int MaxDurability { get; set; } + public List EnchantCategories { get; set; } + public List RepairWith { get; set; } + public DateTime CreatedDate { get; set; } + public DateTime? UpdatedDate { get; set; } + } +} diff --git a/Sources/MyFirstBlazor/MyFirstBlazor.sln b/Sources/MyFirstBlazor/MyFirstBlazor.sln index 2a8d0eb..560468c 100644 --- a/Sources/MyFirstBlazor/MyFirstBlazor.sln +++ b/Sources/MyFirstBlazor/MyFirstBlazor.sln @@ -3,7 +3,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00 # Visual Studio Version 17 VisualStudioVersion = 17.2.32616.157 MinimumVisualStudioVersion = 10.0.40219.1 -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "MyFirstBlazor", "MyFirstBlazor.csproj", "{89A3BC78-30BC-4D5A-9763-01EA71ED9A12}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "MyFirstBlazor", "MyFirstBlazor.csproj", "{89A3BC78-30BC-4D5A-9763-01EA71ED9A12}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution diff --git a/Sources/MyFirstBlazor/Pages/List.razor b/Sources/MyFirstBlazor/Pages/List.razor new file mode 100644 index 0000000..48ab1e8 --- /dev/null +++ b/Sources/MyFirstBlazor/Pages/List.razor @@ -0,0 +1,11 @@ +@page "/list" + +

List

+ +@if (items != null) +{ + foreach (var item in items) + { +
@item.Id
+ } +} \ No newline at end of file diff --git a/Sources/MyFirstBlazor/Pages/List.razor.cs b/Sources/MyFirstBlazor/Pages/List.razor.cs new file mode 100644 index 0000000..67a872f --- /dev/null +++ b/Sources/MyFirstBlazor/Pages/List.razor.cs @@ -0,0 +1,21 @@ +using Microsoft.AspNetCore.Components; +using MyFirstBlazor.Models; + +namespace MyFirstBlazor.Pages +{ + public partial class List + { + private Item[] items; + + [Inject] + public HttpClient Http { get; set; } + + [Inject] + public NavigationManager NavigationManager { get; set; } + + protected override async Task OnInitializedAsync() + { + items = await Http.GetFromJsonAsync($"{NavigationManager.BaseUri}fake-data.json"); + } + } +} diff --git a/Sources/MyFirstBlazor/Program.cs b/Sources/MyFirstBlazor/Program.cs index 92c03d0..c5ee18c 100644 --- a/Sources/MyFirstBlazor/Program.cs +++ b/Sources/MyFirstBlazor/Program.cs @@ -8,6 +8,7 @@ var builder = WebApplication.CreateBuilder(args); builder.Services.AddRazorPages(); builder.Services.AddServerSideBlazor(); builder.Services.AddSingleton(); +builder.Services.AddHttpClient(); var app = builder.Build(); diff --git a/Sources/MyFirstBlazor/Shared/NavMenu.razor b/Sources/MyFirstBlazor/Shared/NavMenu.razor index 6aebf93..4338ee9 100644 --- a/Sources/MyFirstBlazor/Shared/NavMenu.razor +++ b/Sources/MyFirstBlazor/Shared/NavMenu.razor @@ -9,6 +9,11 @@