tt
@page "/add_student"
@page "/update_student/{StudentID:int}"
@using Microsoft.AspNetCore.Components
@using SQLiteDemoWithBlazorApp.Services
@using SQLiteDemoWithBlazorApp.Models
@inject IStudentService StudentService
@code {
[Parameter] public int StudentID { get; set; }
private string firstName;
private string lastName;
private string email;
private string gender;
protected async override Task OnInitializedAsync()
{
if (StudentID > 0)
{
var response = await StudentService.GetStudentByID(StudentID);
if (response != null)
{
firstName = response.FirstName;
lastName = response.LastName;
email = response.Email;
gender = response.Gender;
}
}
}
private async Task AddStudentRecord()
{
if (string.IsNullOrEmpty(firstName) || string.IsNullOrEmpty(lastName) || string.IsNullOrEmpty(email))
{
await App.Current.MainPage.DisplayAlert("Validation Error", "All fields are required.", "OK");
return;
}
var studentModel = new StudentModel
{
FirstName = firstName,
LastName = lastName,
Email = email,
Gender = gender,
StudentID = StudentID
};
int response = -1;
if (StudentID > 0)
{
response = await StudentService.UpdateStudent(studentModel);
}
else
{
response = await StudentService.AddStudent(studentModel);
}
if (response > 0)
{
firstName = lastName = gender = email = string.Empty;
this.StateHasChanged();
await App.Current.MainPage.DisplayAlert("Record Saved", "Record Saved To Student Table", "OK");
}
else
{
await App.Current.MainPage.DisplayAlert("Oops", "Something went wrong while adding record", "OK");
}
}
}
Comments
Post a Comment