ค่าการหมดเวลาเซสชันเริ่มต้นใน ASP.NET คืออะไร?
ค่าการหมดเวลาเซสชันเริ่มต้นใน ASP.NET คืออะไร?
คำตอบ:
เป็นเวลา 20 นาทีตามMSDN
จาก MSDN:
แอตทริบิวต์ TimeSpan เสริม
ระบุจำนวนนาทีที่เซสชันสามารถว่างได้ก่อนที่จะถูกละทิ้ง ไม่สามารถตั้งค่าแอตทริบิวต์การหมดเวลาเป็นค่าที่มากกว่า 525,601 นาที (1 ปี) สำหรับโหมดในกระบวนการและสถานะเซิร์ฟเวอร์ การตั้งค่าคอนฟิกการหมดเวลาเซสชันใช้เฉพาะกับเพจ ASP.NET การเปลี่ยนค่าการหมดเวลาเซสชันไม่มีผลต่อการหมดเวลาของเซสชันสำหรับเพจ ASP ในทำนองเดียวกันการเปลี่ยนการหมดเวลาเซสชันสำหรับเพจ ASP ไม่มีผลต่อการหมดเวลาเซสชันสำหรับเพจ ASP.NET ค่าเริ่มต้นคือ 20 นาที
มันขึ้นอยู่กับทั้งการกำหนดค่าหรือการเปลี่ยนแปลงการเขียนโปรแกรม
ดังนั้นวิธีที่น่าเชื่อถือที่สุดในการตรวจสอบค่าปัจจุบันคือที่รันไทม์ผ่านรหัส
ดูคุณสมบัติHttpSessionState.Timeout ; ค่าเริ่มต้นคือ 20 นาที
คุณสามารถเข้าถึงความเหมาะสมนี้ใน ASP.NET ผ่านHttpContext :
this.HttpContext.Session.Timeout // ASP.NET MVC controller
Page.Session.Timeout // ASP.NET Web Forms code-behind
HttpContext.Current.Session.Timeout // Elsewhere
ค่าเริ่มต้นคือ 20 นาที http://msdn.microsoft.com/en-us/library/h6bb9cz9(v=vs.80).aspx
<sessionState
mode="[Off|InProc|StateServer|SQLServer|Custom]"
timeout="number of minutes"
cookieName="session identifier cookie name"
cookieless=
"[true|false|AutoDetect|UseCookies|UseUri|UseDeviceProfile]"
regenerateExpiredSessionId="[True|False]"
sqlConnectionString="sql connection string"
sqlCommandTimeout="number of seconds"
allowCustomSqlDatabase="[True|False]"
useHostingIdentity="[True|False]"
stateConnectionString="tcpip=server:port"
stateNetworkTimeout="number of seconds"
customProvider="custom provider name">
<providers>...</providers>
</sessionState>
ระยะเวลาหมดอายุเริ่มต้นสำหรับเซสชันคือ 20 นาที
คุณสามารถอัปเดต sessionstate และกำหนดค่านาทีภายใต้การหมดเวลา
<sessionState
timeout="30">
</sessionState>
int check = this.HttpContext.Session.Timeout;
แต่ฉันสามารถตั้งค่าการหมดเวลาเซสชันด้วยคีย์ได้หรือไม่ และตรวจสอบการหมดเวลาของเซสชันสำหรับคีย์เฉพาะเช่น:Session["mykey"]
?