【发布时间】:2023-04-10 11:12:01
【问题描述】:
我想知道如何使用 ASP.NET 从 C# 会话中注销用户。我正在使用 SQL Server 检索用户登录时的用户名,(下面的第二个代码块) 下面是我的aspx页面登录按钮背后的代码
protected void btnLogin_Click(object sender, EventArgs e)
{
string email = txtEmail.Text;
string password = txtPassword.Text;//AQUIRE EMAIL AND PASSWORD AND ADD TO STRINGS
SqlDataReader dataread = null;
SQLconn.Open();
SqlCommand chkLogin = new SqlCommand("SELECT * FROM Member WHERE Email='" + email + "' AND Password='" + password + "'", SQLconn);
dataread = chkLogin.ExecuteReader();
SqlCommand nameAdd = new SqlCommand("SELECT Name FROM Member WHERE Email='" + email + "'", SQLconn);
if (dataread.Read())
{
Response.Write("You are logged in");
Session.Add("userID", dataread[0].ToString());
Session.Add("userFName", dataread[1].ToString());
Session.Add("userEmail", dataread[3].ToString());
Response.Redirect("~/Profiles.aspx");
}
else
{
Response.Write("Please try again. Usernames and Passwords do not match.");
}
SQLconn.Close();
}
当他们登录时,他们会被重定向到另一个页面。这是该页面的代码
if (Session.Count > 0)
{
if (Session.Count > 0)
{
string name = (string)Session["userFName"];
txtGreeting.Visible = true;
txtGreeting.Text = "Welcome " + name + " , you are logged in! ";
}
}
【问题讨论】:
-
在处理 SqlConn、SqlDataReader 等时使用 try/catch 或
using语句 -
这是我正在创建的本地项目,不会有用户被入侵
标签: c# asp.net logout asp.net-session