在创建用户之前调用方法



当您在 ASP.NET 标准CreateUserQizard中按"创建用户"时,OnCreatedUser会在创建用户后被调用并重定向您。但是,我需要在创建用户之前但在单击"创建用户"按钮之后运行一些代码。

像这样:点击"创建用户"->运行我的方法->创建用户->创建用户

我已经制作了自己的方法来检查电子邮件是否已存在,但是我不知道如何调用它,因为向导会立即创建用户。在创建用户并执行我的代码之前,有什么方法可以进入吗?

我的代码:

TextBox EmailTextBox = RegisterUser.CreateUserStep.ContentTemplateContainer.FindControl("Email") as TextBox;
String emailParam = EmailTextBox.Text;
using (SqlConnection con = new SqlConnection(strCon))
    {
       con.Open();
       using (SqlCommand cmd = con.CreateCommand())
          {
            cmd.CommandText = "SELECT Email FROM Memberships WHERE Email=@emailParam";
            cmd.Parameters.AddWithValue("@emailParam", emailParam);
             using (SqlDataReader reader = cmd.ExecuteReader())
                {
                            if (reader.Read())
                            {
                                LabelExists.Text = "This e-mail is already registered";
                            }
                            else
                            {
                                //execute method that creates user
                            }
                }
             }
        con.Close();
   }

只需使用 OnCreatingUser ,并设置e.Cancel = true;电子邮件是否已注册。

如果为成员资格提供程序设置了requiresUniqueEmail="true",它将为您执行此检查。

相关内容

  • 没有找到相关文章

最新更新