会话超时问题

时间:2015-03-07 11:30:12

标签: jquery session web-config

我有一个母版页。在这个母版页面我已经加载了另一个表格。大多数情况下它运作良好。现在问题是,我已将会话设置为超时20分钟。会话次数超过,如果页面空闲则需要自动登录页面。是否可以在Web配置文件中设置或者可以使用jquery代码。

1 个答案:

答案 0 :(得分:0)

正如@n-dru所提到的,在母版页的标题中添加元标记。

 namespace SessionExpirePage
    {
        using System;
        using System.Web.UI;

        public partial class Secure : System.Web.UI.MasterPage
        {
            public int SessionLengthMinutes
            {
                get { return Session.Timeout; }
            }
            protected override void OnPreRender(EventArgs e)
            {
                base.OnPreRender(e);
                this.PageHead.Controls.Add(new LiteralControl(
                    String.Format("<meta http-equiv='refresh' content='{0};url={1}'>", 
                    SessionLengthMinutes*60, "/YOUR-PATH-TO/LoginPage.aspx")));

//here SessionLengthMinutes*60 will convert minutes to seconds, just for a try you may pass static value 3 seconds, so you don't need to wait for a long time.
            }
        }
    }

在上面的示例中,部分类名必须与主页相同。 只需打开您的母版页并检查您的页面指令中的Inherits属性。 让它如吼一声

<%@ Master Language="C#" AutoEventWireup="true" CodeBehind="Site.master.cs" Inherits="MySiteNameSpace.MySiteMaster" %>

现在你的课程定义应该是这样的:

namespace MySiteNameSpace
    {
        using System;
        using System.Web.UI;

        public partial class MySiteMaster: System.Web.UI.MasterPage
        {
            //Rest of the thing will remain same as mentioned above.
        }
    }