簡體   English   中英

會話在ASP.NET Web應用程序中結束

[英]Session ends in ASP.NET Web application

親愛的,

我有一個ASPX.Net應用程序(框架4.5.1),它似乎會話每20分鍾結束一次,我嘗試執行以下操作,但是會話仍然在20分鍾后結束。

在配置文件中,我添加:

<system.web>
  <sessionState timeout="60000" cookieless="AutoDetect" mode = "InProc" />
</system.web>

添加新會話時,我添加:

HttpContext.Current.Session.Timeout = 60000;

在全局類中,我添加:

protected void Session_Start(object sender, EventArgs e)
{
    Session.Timeout = 60000;
}

請注意,我試圖增加超時並減少超時,但是沒有任何改變。

一些托管服務提供商會覆蓋您的配置。 您無法更改該值。 我建議您使用Cookie代替Session。

如果要使用會話,則可以使用此基本功能。 將此代碼塊添加到您的MasterPage / Layout。 在添加之前,您需要為這些請求創建一個空白頁。

<script>
            PingAspToKeepSession();
            function PingAspToKeepSession() {
                var url = "/Session/Refresh";
                var httpOb = window.XMLHttpRequest ? new XMLHttpRequest() : new ActiveXObject('Microsoft.XMLHTTP');
                httpOb.open("POST", url, true);
                httpOb.send("");
                window.setTimeout("PingAspToKeepSession();", 60000); // every 60 seconds
            }
</script>

或者您可以嘗試更改machine.config:C:\\ Windows \\ Microsoft.NET \\ Framework \\ v4.0.30319 \\ Config \\ machine.config

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM