Wo sollte ich erklären, eine session-variable in asp.net
Baue ich ein Asp.net -Anwendung. Brauche ich zum speichern einer HashTable in einer Sitzung.
Beim laden der Seite Schreibe ich
protected void Page_Load(object sender, EventArgs e)
{
if (!Page.IsPostBack)
{
Session["AttemptCount"]=new Hashtable(); //Because of this line.
}
}
Problem hier ist, wenn ein Benutzer die Seite aktualisieren, session["AttemptCount"] auch aktualisiert.
Ich will wissen, wo sollte ich erklären
Session["AttemptCount"]=new Hashtable();
So, dass meine seesion nicht bekommen refeshed.
BEARBEITEN In Global.asax, diese session startet, sobald der Benutzer öffnet die website. Ich will creat dieser Sitzung nur, wenn der Benutzer eine bestimmte Seite. ich.e Login.aspx
InformationsquelleAutor Vaibhav Jain | 2010-02-26
Du musst angemeldet sein, um einen Kommentar abzugeben.
Tun es in der
Session_Start
Methode in Ihrer Global.asax wie so...Update:
Dann einfach nur einen Scheck zu sehen, ob die session variable existiert, wenn es nicht nur erstellen Sie dann die variable. Könnte man kleben Sie es in eine Eigenschaft um die Dinge cleaner wie so...
Und dann könnten Sie einfach aufrufen, auf dem Grundstück
AttemptCount
überall dort, wo Sie wie so...Ich aktualisiert meine Antwort, werden Sie einfach brauchen, um zu überprüfen, um zu sehen, wenn es vorhanden ist, durch die Prüfung gegen null
Was tun Sie speichern in hashtable? Ist es die Anzahl der Male, die der Benutzer versucht hat einzuloggen?
Ja, ich bin speichern keine. versuche Anmeldename für einen bestimmten Benutzer. Also, wenn ein bestimmter Benutzer bei der Anmeldung, mehr als 15 mal, ich kann blockieren, die Sitzung.
Dies wird sehr einfach für die Menschen zu umgehen, die durch eine Deaktivierung von session-cookies.
InformationsquelleAutor Naeem Sarfraz
Könnten Sie ein Anwesen wie dieses in Ihre Seite ein:
dann können Sie es verwenden, ohne sich sorgen zu machen:
InformationsquelleAutor M4N
testen, ob es existiert zuerst
obwohl die session_start besser ist, müssen Sie nur nutzt es auf der einen Seite, aber Sie können erstellen Sie für jede Sitzung.
InformationsquelleAutor Pharabus
InformationsquelleAutor Shiv Shankar Mahla
Blick auf Global.asax und die Application_Started (glaube ich) und es ist ein für die session begann zu.
InformationsquelleAutor Ryan O'Neill