c# - 如何在登录时获取用户名并将其存储到数据库

标签 c# asp.net

我想在用户登录时获取用户名,之后,当他们想要为特定候选人投票时,他们单击投票按钮,然后用户的用户名将存储在数据库中。关于如何做有什么建议吗?为了显示候选人详细信息(用于投票),我使用了 gridview,现在,我可以将候选人详细信息存储在数据库中,只需留下选民的用户名即可。

protected void LinkButton_Click(Object sender, EventArgs e)
    {
        String MyConnection2 = "Server=localhost;database=ovs;Uid=root;password=; Convert Zero Datetime=True";
     
        MySqlConnection MyConn2 = new MySqlConnection(MyConnection2);      
        GridViewRow grdrow = (GridViewRow)((LinkButton)sender).NamingContainer;
        Label lblStudentId = (Label)grdrow.Cells[0].FindControl("lblID");
        string studentId = lblStudentId.Text;
        String query = "insert into voting (studentID,)values ('" + lblStudentId.Text + "')";  
        MySqlCommand MyCommand2 = new MySqlCommand(query, MyConn2);
        MySqlDataReader MyReader2;
        MyConn2.Open();
        MyReader2 = MyCommand2.ExecuteReader();

        while (MyReader2.Read())
        {
        }
        MyConn2.Close();
    }

    }

当用户单击投票按钮时, GridView 中显示的候选人ID将存储到数据库中。但是,我想存储谁投票给特定候选人(存储他们的学生ID)。我想在他们登录时捕获他们的用户名,当他们单击投票按钮时,将他们的学生 ID 插入数据库

 Session["UserName"] = txtID.Text;
txtID.Text = Session["UserName"].ToString();

我将 session 存储在用户登录页面中。如何使用插入命令将其存储到数据库(当他们单击投票按钮时)?

最佳答案

使用ViewstateSession对象来存储用户名。然后从中检索用户名。 值设置为sessionviewstate

Session["Username"]=txtusername.Text;
Viewstate["Username"]=txtusername.Text;

session View 状态获取

Response.Write(Session["Username"].ToString());
Response.Write(Session["Username"].ToString());

关于c# - 如何在登录时获取用户名并将其存储到数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63297168/

相关文章:

asp.net - 无法在 Windows 上的 Linux docker 中配置 ASP.NET HTTPS 端点

c# - 将 16 位字符串拆分为 4 个部分并将它们存储在 C# 中的数组中

c# - 动态计算字符串表达式的结果

c# - 如何在 CSharp 应用程序中实现 IDropTarget 并将其注册为文件类型?

ASP.NET WebApi : (405) Method Not Allowed

asp.net - ASP.NET MVC 将来会取代 ASP.NET Web Forms 吗?

c# - Roslyn 中的代理缓存行为更改

c# - 使用 Transform 在 Silverlight 中旋转图像(控件)

c# - 通过 javascript/jquery 填充列表时如何在服务器端获取下拉值

asp.net - WCF 请求处理线程敏捷吗?