[英]Asp.net/JQuery: Set session after successful login
我正在使用 JQuery 对 SQL 数据库进行身份验证的登录页面。 我正在使用 ASP.NET WebMethod 来验证用户并返回 1 或 0,其中 1 表示成功,0 表示失败。 如果成功,我想创建一个 session 并设置一个密钥,但我得到一个 Object Null 异常错误(我标记了下面的行)。
登录页面非常简单。 它接收用户名/pin 并在按下按钮时调用 ValidateUser。
我尝试在谷歌上搜索并找到一些示例并尝试复制它们,但我仍然得到相同的答案。
[WebMethod]
[ScriptMethod(UseHttpGet = true)]
public int ValidateUser(string user_id, string pin_nbr)
{
DataTable dt = new DataTable();
SqlConnection con = new SqlConnection(ConfigurationManager.ConnectionStrings[conName].ConnectionString);
SqlDataAdapter da = new SqlDataAdapter("ValidateUser", con);
try
{
da.SelectCommand.CommandType = CommandType.StoredProcedure;
da.SelectCommand.Parameters.Add("@UserID", SqlDbType.VarChar,100).Value = user_id;
da.SelectCommand.Parameters.Add("@PinNbr", SqlDbType.VarChar,100).Value = pin_nbr;
da.Fill(dt);
}
catch (Exception ex)
{
WriteToLog(errorMessage.ToString());
}
finally
{
da.Dispose();
}
if (dt.Rows.Count == 1)
{
Session["UserID"] = user_id; //<-- OBJECT NULL EXECPTION HERE
return 1;
}
return 0;
}
尝试将 EnableSession = true 添加到您的 WebMethod 属性。
[WebMethod(EnableSession = true)]
这应该可以解决问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.