Sqlserver
 sql >> Datenbank >  >> RDS >> Sqlserver

Überprüfen Sie, ob der Benutzer bereits auf der asp.net-Website angemeldet ist

Um mehr Details zu meinem Kommentar zu geben:

Schritt 1

Erstellen Sie eine Sessions Tabelle, die die folgenden Felder enthält:

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

Schritt 2

Erstellen Sie Ihre Sessions Klasse.

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

Schritt 3

Wenn Sie eine Funktion namens DoLogin haben .

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
}

Schritt 4

Erstellen Sie eine Funktion, um zu prüfen, ob der Benutzer bereits angemeldet ist.

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

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