Loss of session and application ended randomly?

374 Views Asked by At

I have sessions recording a user's log in information but it gets lost due to my application ending.

Running my code from local host i have no issues, but now that i have lunched the site live i lose the session very quickly with in minutes.

I decided to log the Golbal.asax file and record when a session is started and ended and when my application starts and ends and if there are any application errors.

When a user navigates thought the website the session is checked if its null, if the session is not null i register hidden fields for that page to use my session values, but if the sessions are null i abandon them and redirect to my login page.

Here is what my log has shown me:

[11:52:25]   Application has started 
[11:52:25]   Session has started 
[11:52:35]   Use session 
[11:52:45]   Use session 
[11:52:54]   Use session 
[11:52:59]   Use session 
[11:53:5 ]   Use session 
[11:53:10]   Use session 
[11:53:15]   Use session 
[11:53:18]   Session has ended 
[11:53:18]   Application has ended 
[11:53:22]   Application has started 
[11:53:23]   Session has started 
[11:53:23]   Abandon Session 
[11:53:23]   Session has ended 
[11:53:23]   Session has started

I navigated around my site with 7 clicks on the same hyper link basically just refreshing the page i was on, but for an unknown reason the session was lost and application was ended. As you can see from the log, this was all within a minute.

When a navigation link is clicked this is the code to check the session.

    protected override void OnInit(EventArgs e)
    {
        LogClass Log = new LogClass();

        if (this.Session != null && this.Session.Count > 0)
        {
            Log.Logger("Use session");

            string email = (string)this.Session["Email"];
            int practiceId = (int)this.Session["PracticeId"];
            int practitionerId = (int)this.Session["PractitionerId"];

            this.ClientScript.RegisterHiddenField("loggedInUserName", email);
            this.ClientScript.RegisterHiddenField("practiceId", practiceId.ToString());
            this.ClientScript.RegisterHiddenField("practitionerId", practitionerId.ToString());
        }
        else
        {
            Log.Logger("Abandon Session");
            this.Session.Abandon();
            Response.Cookies.Add(new HttpCookie("ASP.NET_SessionId", ""));
            Response.Redirect("~/Default.aspx");  
        }

        base.OnInit(e);
    }

What could be causing my session to get lost so quickly, and why is the just a problem when hosted live and not a problem from local host?

What causes the application to end, since i have no application errors logged?

0

There are 0 best solutions below