@using Management.Web.Shared.Components @inject CoursePlanner planner @inject AssignmentEditorContext assignmentContext @code { private int rubricReloadKey = 0; private string? error { get; set; } = null; protected override void OnInitialized() { assignmentContext.StateHasChanged += reload; reload(); } private void reload() { this.InvokeAsync(this.StateHasChanged); } public void Dispose() { assignmentContext.StateHasChanged -= reload; } private int requiredPoints => assignmentContext.Assignment.Rubric.Where(r => !r.IsExtraCredit).Select(r => r.Points).Sum(); private int extraCreditPoints => assignmentContext.Assignment.Rubric.Where(r => r.IsExtraCredit).Select(r => r.Points).Sum(); }

Rubric

@if (error != null) {

Error: @error

}
Label
Points
Extra Credit
@foreach (var item in assignmentContext.Assignment.Rubric) {
@item.Label
@item.Points
@item.IsExtraCredit
}
Required Points: @requiredPoints
Extra Credit Points @extraCreditPoints