文本.框被阻塞以防止用户再次回答,但如果已经回答,则显示数据存储

本文关键字:如果 存储 数据 显示 用户 文本 | 更新日期: 2023-09-27 18:05:18

我有这个在我的后台代码:

protected void Page_Load(object sender, EventArgs e)
{
    username.Text = "[" + HttpContext.Current.User.Identity.Name + "]"; 
    if (!IsPostBack)
    {
        string sFilePath = Server.MapPath("Database3.accdb");
        OleDbConnection Conn = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + sFilePath + ";Persist Security Info=False;");
        using (Conn)
        {
            Conn.Open();
            OleDbCommand myCommand = new OleDbCommand("SELECT COUNT(*) FROM colaborador WHERE username=@username", Conn);
            myCommand.Parameters.Add("?", OleDbType.VarChar).Value = HttpContext.Current.User.Identity.Name;
            int totalRegistos = (int)myCommand.ExecuteScalar();
            if (totalRegistos > 0)
            {
                    // Já registado
                    Label1.Text = "The user already answered before.";
                    business.Enabled = false;
                    business2.Enabled = false;
                    mobile.Enabled = false;
                    Button1.Visible = false;
            }
        }
    }

这是可能的,在文本中。框我得到的数据保存在访问数据库?

例如,在mobile.Enabled = false;中出现blocked/deactivate yes,但其中包含数据库的数据。

我怎么能改变我的代码做这样的事情?

文本.框被阻塞以防止用户再次回答,但如果已经回答,则显示数据存储

尝试使用数据读取器查看返回的数据是否包含任何行。

protected void Page_Load(object sender, EventArgs e)
{
    username.Text = "[" + HttpContext.Current.User.Identity.Name + "]"; 
    if (!IsPostBack)
    {
        string sFilePath = Server.MapPath("Database3.accdb");
        OleDbConnection Conn = new OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + sFilePath + ";Persist Security Info=False;");
        using (Conn)
        {
            Conn.Open();
            OleDbCommand myCommand = new OleDbCommand("SELECT COUNT(*) FROM colaborador WHERE username=@username", Conn);
            myCommand.Parameters.Add("?", OleDbType.VarChar).Value = HttpContext.Current.User.Identity.Name;
            OleDbDataReader reader = myCommand.ExecuteReader();
            if (reader.HasRows)
            {
                    // Já registado
                    Label1.Text = "The user already answered before.";
                    business.Enabled = false;
                    business2.Enabled = false;
                    mobile.Enabled = false;
                    mobile.Text = ""; //if this is a textbox
                    Button1.Visible = false;
            }
        }
    }
相关文章: