I am trying to make login authentication for 3 types of roles, log in as a admin or a students its work but when i logged in as teacher its give error"System.NullReferenceException: 'Object reference not set to an instance of an object.'"
please review the code and give me the some good solution....
public bool LoggingIn(ref bool logged, out bool startup)
{
string pswd;
Console.Write("Write your Email :");
email = Console.ReadLine();
Console.Write("Write your Password :");
pswd =Console.ReadLine();
var adminContext = new UMSDbContext();
var tchremail = (adminContext.Teachers.Where(t => t.Email == email).FirstOrDefault());
var stdemail = (adminContext.Students.Where(s => s.Email == email).FirstOrDefault());
var data = (adminContext.Admins.Where(u =>u.Email == email && u.Password==pswd).FirstOrDefault());
if (data != null && email == "rana@gmail.com")
{
Console.WriteLine("Login Succesully");
Console.WriteLine();
logged = true;
startup = false;
RunAdmin();
return logged;
}
else if (data != null && email == stdemail.Email)
{
Console.WriteLine("Login Succesully");
Console.WriteLine();
logged = true;
startup = false;
RunStudent();
return logged;
}
else if (data != null && email == tchremail.Email)
{
Console.WriteLine("Login Succesully");
Console.WriteLine();
logged = true;
startup = false;
RunTeacher();
return logged;
}
else
{
Console.WriteLine(" Invalid Email or Password");
Console.WriteLine();
startup = true;
return logged;
}
}