Files
chapter-organizer/WebApp/Components/Pages/StudentPages/Delete.razor
T

81 lines
2.3 KiB
Plaintext

@page "/students/delete"
@using Microsoft.EntityFrameworkCore
@inject AppDbContext context
@inject NavigationManager NavigationManager
<PageTitle>Delete Student - TSA Chapter Organizer</PageTitle>
<h1>Delete</h1>
<p>Are you sure you want to delete this?</p>
<div>
<h2>Student</h2>
<hr />
@if (student is null)
{
<p><em>Loading...</em></p>
}
else {
<dl class="row">
<dt class="col-sm-2">FirstName</dt>
<dd class="col-sm-10">@student.FirstName</dd>
</dl>
<dl class="row">
<dt class="col-sm-2">LastName</dt>
<dd class="col-sm-10">@student.LastName</dd>
</dl>
<dl class="row">
<dt class="col-sm-2">Grade</dt>
<dd class="col-sm-10">@student.Grade</dd>
</dl>
<dl class="row">
<dt class="col-sm-2">StateId</dt>
<dd class="col-sm-10">@student.StateId</dd>
</dl>
<dl class="row">
<dt class="col-sm-2">RegionalId</dt>
<dd class="col-sm-10">@student.RegionalId</dd>
</dl>
<dl class="row">
<dt class="col-sm-2">NationalId</dt>
<dd class="col-sm-10">@student.NationalId</dd>
</dl>
<dl class="row">
<dt class="col-sm-2">TsaYear</dt>
<dd class="col-sm-10">@student.TsaYear</dd>
</dl>
<dl class="row">
<dt class="col-sm-2">OfficerRole</dt>
<dd class="col-sm-10">@student.OfficerRole</dd>
</dl>
<EditForm method="post" Model="student" OnValidSubmit="DeleteStudent" FormName="delete" Enhance>
<button type="submit" class="btn btn-danger" disabled="@(student is null)">Delete</button> |
<a href="/students">Back to List</a>
</EditForm>
}
</div>
@code {
private Student? student;
[SupplyParameterFromQuery]
private int Id { get; set; }
protected override async Task OnInitializedAsync()
{
student = await context.Students.FirstOrDefaultAsync(m => m.Id == Id);
if (student is null)
{
NavigationManager.NavigateTo("notfound");
}
}
private async Task DeleteStudent()
{
context.Students.Remove(student!);
await context.SaveChangesAsync();
NavigationManager.NavigateTo("/students");
}
}