public Business.Entities.Persona login(string usuario, string password) { Conexion.getInstance().Connect(); try { SqlCommand cmd = new SqlCommand("select * from dbo.Usuario us inner join dbo.Persona p on p.idPersona = us.idPersona where CONVERT(VARCHAR,us.NombreUsuario)='" + usuario + "' and CONVERT(VARCHAR,us.Contraseña)='" + password + "'", Conexion.getInstance().Conection); SqlDataReader reader = cmd.ExecuteReader(); Business.Entities.Persona usu; reader.Read(); int tipo = (int)Convert.ToInt32(reader.GetValue(3)); int idPersona = (int)reader.GetValue(4); Business.Entities.tipoUsuario tipoUsuario = (Business.Entities.tipoUsuario)tipo; String nombre = reader.GetString(5); String apellido = reader.GetString(6); String legajo = reader.GetString(7); String dni = reader.GetString(8); String telefono = reader.GetString(9); String mail = reader.GetString(10); switch (tipoUsuario) { case Business.Entities.tipoUsuario.ALUMNO: usu = new Business.Entities.Alumno(nombre, apellido, legajo, dni, mail, telefono); usu.IDPersona = idPersona; break; case Business.Entities.tipoUsuario.DOCENTE: usu = new Business.Entities.Docente(nombre, apellido, legajo, dni, mail, telefono); usu.IDPersona = idPersona; break; case Business.Entities.tipoUsuario.ADMIN: usu = new Business.Entities.Admin(nombre, apellido, legajo, dni, mail, telefono); usu.IDPersona = idPersona; break; default: usu = null; break; } Conexion.getInstance().Disconnect(); return(usu); } catch (Exception e) { Conexion.getInstance().Disconnect(); return(null); } }
protected void Page_Load(object sender, EventArgs e) { if (Session["tipoPersonaLogueada"] != null) { Business.Entities.tipoUsuario tipo = (Business.Entities.tipoUsuario)Session["tipoPersonaLogueada"]; switch (tipo) { case Business.Entities.tipoUsuario.ALUMNO: Response.Redirect("~/indexAlumno.aspx"); break; case Business.Entities.tipoUsuario.DOCENTE: Response.Redirect("~/indexDocente.aspx"); break; case Business.Entities.tipoUsuario.ADMIN: Response.Redirect("~/indexAdmin.aspx"); break; } } }