2016-04-12 21 views
1

突然、私の登録ボタンは検証以外の操作を実行していません。何か案が?ここ登録ボタンには機能がありません

は私registration.aspx.csです:

protected void Page_Load(object sender, EventArgs e) 
    { 


    } 
    SqlConnection con = new SqlConnection("Data Source = 'PAULO'; Initial Catalog=ShoppingCartDB;Integrated Security =True"); 
    SqlCommand cmd = new SqlCommand(); 

    protected void btnSubmit_Click(object sender, EventArgs e) 
    { 
     if(Page.IsValid) 
     { 
      cmd.Connection = con; //assigning connection to command 
      cmd.CommandType = CommandType.Text; //representing type of command 
      cmd.CommandText = "INSERT INTO UserData values(@Username,@Firstname,@Lastname,@Email,@Password,@CustomerType,@DeliveryAddress,@Zip,@ContactNumber)"; 

      //adding parameters with value 
      cmd.Parameters.AddWithValue("@Username", txtUser.Text); 
      cmd.Parameters.AddWithValue("@Firstname", txtFN.Text); 
      cmd.Parameters.AddWithValue("@Lastname", txtLN.Text); 
      cmd.Parameters.AddWithValue("@Email", txtEmail.Text); 
      cmd.Parameters.AddWithValue("@Password", (txtPW.Text)); 
      cmd.Parameters.AddWithValue("@CustomerType", RadioButtonList1.SelectedItem.ToString()); 
      cmd.Parameters.AddWithValue("@DeliveryAddress", txtAddress.Text); 
      cmd.Parameters.AddWithValue("@Zip", txtZip.Text); 
      cmd.Parameters.AddWithValue("@ContactNumber", txtContact.Text); 
      con.Open(); //opening connection 
      cmd.ExecuteNonQuery(); //executing query 
      con.Close(); //closing connection 
      label_register_success.Text = "Registered Successfully.."; 

     } 
     else 
     { 
      label_register_success.Text = "Please check the registration errors"; 
     } 
    } 
    protected void ValidateUserName(object source, ServerValidateEventArgs arguments) 
    { 
     string UserName = arguments.Value; 
     using (SqlConnection con = new SqlConnection("Data Source = 'PAULO'; Initial Catalog=ShoppingCartDB;Integrated Security =True")) 
     { 
      SqlCommand cmd = new SqlCommand("SELECT * FROM UserData WHERE [email protected]", con); 
      cmd.Parameters.AddWithValue("@Username", UserName); 
      con.Open(); 
      SqlDataReader reader = cmd.ExecuteReader(); 

      if (reader.HasRows) 
      { 
       arguments.IsValid = false; 
      } 
      else 
      { 
       arguments.IsValid = true; 
      } 
     } 
    } 
    protected void ValidateEmail(object source, ServerValidateEventArgs arguments) 
    { 
     string Email = arguments.Value; 
     using (SqlConnection con = new SqlConnection("Data Source = 'PAULO'; Initial Catalog=ShoppingCartDB;Integrated Security =True")) 
     { 
      SqlCommand cmd = new SqlCommand("SELECT * FROM UserData WHERE [email protected]", con); 
      cmd.Parameters.AddWithValue("@Email", Email); 
      con.Open(); 
      SqlDataReader reader = cmd.ExecuteReader(); 

      if (reader.HasRows) 
      { 
       arguments.IsValid = false; 
      } 
      else 
      { 
       arguments.IsValid = true; 
      } 

そのを繰り返し、ユーザ名と電子メールの登録が成功し、検証を行っていません。ありがとう、私を助けてください!

Page.Validate(); 

とのIsValidをチェックする前に、パラメータ(該当する場合)として使用する任意の検証グループに渡し、それがエラーを検出した場合参照してください経由して検証をトリガー

+0

実際には、それは繰り返されたユーザー名の検証を示しますが、それでも成功した登録を推し進めていません。 –

+0

conとcmdの宣言は、本当にどのメソッドの外にあるのですか?あなたの 'btnSubmit_Click'コードが消えてしまいます。また、デバッガでステップ実行するとどうなりますか? – NotMe

答えて

0

してみてください。 ValidateメソッドがCustomValidatorコントロールから呼び出されたと仮定します。

関連する問題