问题 OnClick

诺斯福德

新成员
已加入
2017年1月17日
留言内容
4
编程经验
10+
C#:
<%@ Page Title="Default3" Language="C#" MasterPageFile="~/Site.Master" AutoEventWireup="true" CodeBehind="Default3.aspx.cs" Inherits="test5.Default3" %>

<asp:Content ID="BodyContent" ContentPlaceHolderID="MainContent" runat="server">
   
         <asp:Label ID="Username_Label" runat="server" Text="Username   "></asp:Label>
        <asp:TextBox ID="Username" runat="server"></asp:TextBox>
        <br />
        <br />
        <asp:Label ID="Password_Label" runat="server" Text="Password"></asp:Label>
        <asp:TextBox ID="Password" runat="server"></asp:TextBox>
        <br />
        <br />
        <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />  
 
</asp:Content>



这是我的代码背后


C#:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Data.OleDb;
using System.Data;

namespace test5
{
    public partial class Default3 : Page
    {
        protected void Page_Load(object sender, EventArgs e)
        {

        }

        protected void Button1_Click(object sender, EventArgs e)
        {
            string cs = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=|DataDirectory|\\test.accdb";
            if (Username.Text == "" || Password.Text == "")
            {
                MessageBox.Show("Please provide UserName and Password");
                return;
            }
            try
            {
                OleDbConnection con = new OleDbConnection(cs);

                OleDbCommand cmd = new OleDbCommand("Select * from Admin where [email protected] and [email protected]", con);

                cmd.Parameters.AddWithValue("@username", Username.Text);
                cmd.Parameters.AddWithValue("@password", Password.Text);
                con.Open();
                OleDbDataAdapter adapt = new OleDbDataAdapter(cmd);

                DataSet ds = new DataSet();
                adapt.Fill(ds);
                con.Close();
                int count = ds.Tables[0].Rows.Count;
                //If count is equal to 1, than show frmMain form
                if (count == 1)
                {
                    MessageBox.Show("Login Successful!");

                    Session["LoggedIn"] = "Yes";
                    Response.Redirect("LoggedIn");
                    
                }
                else
                {
                    MessageBox.Show("Login Failed!");
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
    }

}




这是一个Web应用程序


在受保护的void Button1_Click(对象发送者,EventArgs e)中


我正进入(状态"名称“用户名”在当前上下文中不存在,并且与“密码”相同,我也不知道为什么


谢谢
 

金西尼

C#论坛主持人
工作人员
已加入
2011年4月23日
留言内容
3,566
地点
悉尼,澳大利亚
编程经验
10+
到底用那种方法呢?您在这里谈论:
if (Username.Text == "" || Password.Text == "")

如果是这样,则似乎您正在尝试引用从未真正添加到窗体中的几个TextBox控件。
 

诺斯福德

新成员
已加入
2017年1月17日
留言内容
4
编程经验
10+
文本框为表格。问题是设计器文件。由于某种原因,他们不在那儿-我不得不删除它并重新创建它,然后它才起作用。谢谢
 
最佳 底部