sql >> Base de Datos >  >> RDS >> Sqlserver

Compruebe si el usuario ya ha iniciado sesión en el sitio web asp.net

Para dar más detalles sobre mi comentario:

Paso 1

Crear una Sessions tabla que contiene los siguientes campos:

SessionId ( Primary Key )                       char(24)
UserId ( Foreign Key to Users table )           int
LoginDate                                       datetime

Paso 2

Crea tu Session clase.

public class Session {
    public string Sessionid { get; set; }
    public int UserId { get; set; }
    public DateTime LoginDate { get; set; }
}

Paso 3

Si tiene una función llamada DoLogin .

public void DoLogin() {
   //validation commes here...

   //create your session
   Session["User"] = user; //user is your User class object

   //create session class for db
   Session session = new Session();
   session.SessionId = ""; //you can generate here a 24 character string
   session.UserId = user.Id;
   session.LoginDate = DateTime.Now;

   db.Add(session); //add session to db
}

Paso 4

Cree una función para comprobar si el usuario ya ha iniciado sesión.

public bool IsLoggedIn(User user) {
   Session session = db.GetSession(user.Id); //Get session of the user

   if(session != null)
   {
      return true;
   } else {
      return false;
   }
}