I have something strange going on with our session state.
Our ASP.NET C# application has a session timeout of 10 min, but it seems to be losing session state when redirecting between pages.

So, we set out session value, and redirect to the next step,

```
        Session["temp"] = "somevalue";
        Response.Redirect("page2.aspx");

```

At the top of page2, we check the session value, and if it's not there, redirect back to the start (the code below is the first on `Page_Load`):

```
        if (Session["temp"] == null)
        {
            Response.Redirect("start.aspx");
        }

```

The issue is it keeps on doing this redirect, even though the session should not have timed out.

I have checked the config file, and it has a machinekey, as I have been informed that this can sometimes causes issues if it's not there.

Is there something else that could be causing us to lose the session?