我在default.aspx.cs文件里写了这个函数,结果报错说上下文不存在UserName和Password,我用的是asp.net和C#protected string getUserName(TextBox UserName)
    {
        return UserName.Text;
    } 
    protected string getPassword(TextBox Password)
    {
        return Password.Text;
    }
    protected void LoginButton_Click(object sender, EventArgs e)
    {
        BookDAL bookdal = new BookDAL();
        string username = getUserName(UserName);
        string password = getPassword(Password);
        bool result = bookdal.UserLogin(username, password);
        if (result)
        {
            Response.Redirect("default.aspx");
        }
        else
        {
            Response.Redirect("login.aspx");
        }
    }请高手指教啊~~~~~~~~~~~~~在线等答案! 

解决方案 »

  1.   

    protected string getUserName()
      {
       get{return UserName.Text;}
       set {UserName.Text=value;}
      }  
    textbox的ID为UserName
      

  2.   


    但是没有传进去textbox的参数,函数里面不是找不到UserName吗?
      

  3.   

    定义属性
    protected string username
      {
      get{return UserName.Text;}
      set {UserName.Text=value;}
      }   
      

  4.   

    不懂呐……为什么要定义一个实体类?我现在是在default.aspx里放了一个login的控件,然后它里面还有TextBox控件和Button控件,我想在Button控件的事件里写,密码和账号的比对,但是我得先获取前面UserName和Password控件的text值……所以……我是想哦,有没有像C++那样,直接传个参数进去就获取的,或者是我再Button事件前面再写一个函数来返回UserName和Password控件的text值,然后在Button事件里调用……可以吗?可以吗?可以吗?%>_<%~~~~~~~~~~~~~~我要哭啦~~~~~~~~
      

  5.   

    LOGIN控件很强大的,他有一系列的注册用户控件,用起来复杂但很简单,到网上找找相关材料!如果不用Login控件。就简单了!你放一个用户名TextBox控件(命名为:UserName),一个密码TextBox控件(命名为:Password) : 提交按钮事件如下:protected void LoginButton_Click(object sender, EventArgs e)
      {
      BookDAL bookdal = new BookDAL();
      string username = UserName.Text;
      string password = Password.Text;
      bool result = bookdal.UserLogin(username, password);
      if (result)
      {
      Response.Redirect("default.aspx");
      }
      else
      {
      Response.Redirect("login.aspx");
      }
      }
    或者:
    -----------------------------------------
    先定义二个属性 : 
    protected string username
    {
    get{return UserName.Text;}}protected string password
    {
    get{return UserName.Text;}}按钮事件如下:
    protected void LoginButton_Click(object sender, EventArgs e)
      {
      BookDAL bookdal = new BookDAL();
      string username = username;
      string password = password;
      bool result = bookdal.UserLogin(username, password);
      if (result)
      {
      Response.Redirect("default.aspx");
      }
      else
      {
      Response.Redirect("login.aspx");
      }
      }
      

  6.   

    定义返回用户名和密码这两个文本框的ID属性:
    用户名的ID定义为:UserName;
    密码的ID定义为:Password
      

  7.   

    但是提交按钮事件里,直接用了UserName和Password,难道这两个参数不用传进去才可以用的吗?
    因为我上面的那个提交按钮事件里就直接用了UserName和Password,结果它报错,说“上下文上下文找不到UserName和Password”
    ????这是为什么呢?
      

  8.   

    protected void LoginButton_Click(object sender, EventArgs e)
        {
            BookDAL bookdal = new BookDAL();
           
          //  string username = getUserName(UserName);
           // string password = getPassword(Password);
            //string username = Username;
           // string password = PassWord;
            bool result = bookdal.UserLogin(Login1.UserName, Login1.Password);
            if (result)
            {
                Response.Redirect("default.aspx");
            }
            else
            {
                Response.Redirect("login.aspx");
            }
        }后来我这么做了,原来用Login1.UserName可以传参进去,但是我Login1.UserName是什么类型的啊?我以为它是TextBox类型的……但是传参的时候,参数类型应该是string才对啊……