@page "/takeblazorquiz" @using BlazorQuiz.Common.Models @inject HttpClient Http

Take your Blazor quiz!

Your current score is @currentScore


@if (quiz == null) {

Loading...

} else { int quizIndex = 0; @foreach (var quizItem in quiz) {

@quizItem.Question

@{ int choiceIndex = 0; quizScores.Add(0); } @foreach (var choice in quizItem.Options) { int currentQuizIndex = quizIndex; @choice
choiceIndex++; }
quizIndex++;
} } @code { private Quiz[] quiz; List quizScores = new List(); int currentScore = 0; private bool _loaded = false; protected override async Task OnInitializedAsync() { await LoadQuiz(); _loaded = true; } private async Task LoadQuiz(){ quiz = await Http.GetFromJsonAsync("https://blazorquizfunctionapp20221013002852.azurewebsites.net/api/BlazorQuiz"); } void UpdateScore(int chosenAnswerIndex, int quizIndex) { var quizItem = quiz[quizIndex]; if (chosenAnswerIndex == quizItem.IndexCorrectAnswer) { quizScores[quizIndex] = quizItem.Score; } else { quizScores[quizIndex] = 0; } currentScore = quizScores.Sum(); } }