createuser.aspx.cs

来自「asp。net 2.0宝典一书源码 全书源码给大家共享」· CS 代码 · 共 87 行

CS
87
字号
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;

public partial class admin_CreateUser : System.Web.UI.Page
{
    protected override void OnLoad(EventArgs e)
    {
        if (!IsPostBack)
        {
           //绑定角色下拉列表
            string[] roles = Roles.GetAllRoles();

            if (roles.Length == 0)
            {
                NewUserPanel.Enabled = false;
                MessageLabel.Text = "当前没有角色. 请 <a href=createrole.aspx>创建角色</a> 在添加用户之前.";
            }
            else
            {
                RolesDropDownList.DataSource = roles;
                RolesDropDownList.DataBind();
            }
        }
    }

    protected void CreateUserButton_Click(object sender, EventArgs e)
    {
        Page.Validate();
        if (Page.IsValid)
        {
            
            string user = UserNameTextbox.Text;
            string pswd = PasswordTextbox.Text;
            string email = EmailTextbox.Text;
            string question = SecurityQuestionTextbox.Text;
            string answer = SecurityAnswerTextbox.Text;

            string role = RolesDropDownList.SelectedValue;

            MembershipCreateStatus status;
            MembershipUser userObj = Membership.CreateUser(user, pswd, email,
                question, answer, true, out status);

            if (userObj != null)
            {
                Roles.AddUserToRole(userObj.UserName, role);
                MessageLabel.Text = "创建用户成功";

                UserNameTextbox.Text = "";
                PasswordTextbox.Text = "";
                EmailTextbox.Text = "";
                SecurityQuestionTextbox.Text = "";
                SecurityAnswerTextbox.Text = "";
            }
            else
            {
                switch (status)
                {
                    case MembershipCreateStatus.DuplicateEmail:
                        MessageLabel.Text = "电子邮件重复.";
                        break;
                    case MembershipCreateStatus.DuplicateUserName:
                        MessageLabel.Text = "用户名重复.";
                        break;
                    case MembershipCreateStatus.ProviderError:
                        MessageLabel.Text = "提供程序错误.";
                        break;
                    case MembershipCreateStatus.InvalidPassword:
                        MessageLabel.Text = "密码不合法.";
                        break;
                    default:
                        MessageLabel.Text = "其他未知错误";
                        break;
                }
            }
        }
    }
}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?