基本上我正在尝试检查Session
中的.html page
值。到目前为止,我做了什么
在ASPX中
我将值存储在session
中并重定向到html
页。
Session["user_id_no"] = "1234";
Response.Redirect(url);
来自HTML 我正在调用REST GET
方法。
var check= $.ajax({
url: "/loginCheck",
type: 'GET',
success: function (result) {
return result;
},
async:false
});
REST API和方法实施
[HttpGet]
[Route("loginCheck")]
public bool checkLoginStatus()
{
SessionClass sc = new SessionClass();
bool user_id_check = sc.check("user_id_no");
return user_id_check;
}
会话等级实施为
public class SessionClass : System.Web.UI.Page
{
public bool check(string sessionName)
{
if (Session[sessionName] == null)
return false;
return true;
}
}
但我得到例外。
的HResult = -2147467259 Message =会话状态只能在enableSessionState设置为true时使用,无论是在配置文件中还是在Page指令中。还请确保System.Web.SessionStateModule或自定义会话状态模块包含在应用程序配置的\\部分中。
但在我的web.config
<sessionState mode="InProc" timeout="30" />
我也经历了一些问题
答案 0 :(得分:0)
你有没有试过这个?
using System.Web.SessionState;
public class SessionClass : IRequiresSessionState
{
public bool check(string sessionName)
{
if (HttpContext.Current.Session[sessionName] == null)
return false;
return true;
}
}
答案 1 :(得分:-1)
您需要在配置中enableSessionState
作为例外说明
<system.web>
<pages enableSessionState="true" />
</system.web>
检查this answer以获取更多信息