@implements IDisposable; @inject IAgileService AgileService; @layout PageLayout @page "/agile" @if (!AgileService.IsLoaded()) { } else { Agile
@foreach (var sprint in AgileService.AgileSprintModels!.OrderBy(e => e.EndDate).Reverse()) {
@sprint.Name
@if (sprint.StartDate != null) { Start: @sprint.StartDate.Value.ToString("dd/MM/yyyy") }
@if (sprint.EndDate != null) { End: @sprint.EndDate.Value.ToString("dd/MM/yyyy") }
}
Backlog
What is Agile? Agile is a work methodology for determing task assignment and release deadlines.

My agile practice will be creating tasks in a backlog. Assigning them to weekly sprints. And completing all tasks in the allotted time frame.

Any unfinished tasks are moved into the next sprint, or the sprint will be extended by a week.
} @code { #if NO_SQL #else [Inject] DatabaseContext Database { get; set; } [Parameter] public DbSet Tasks { get; set; } [Parameter] public DbSet Sprints { get; set; } #endif private readonly List backlog = new(); protected override void OnInitialized() { AgileService.Subscribe(HasChanged); } void IDisposable.Dispose() { AgileService.Unsubscribe(HasChanged); } void HasChanged() { backlog.Clear(); foreach (var task in AgileService.AgileTaskModels!) { if (task.AgileSprintModelId == null) { backlog.Add(task); } } StateHasChanged(); } protected override async Task OnInitializedAsync() { #if NO_SQL await AgileService.Load(); #else await AgileService.Load(Database); #endif } }