ASP.NET如何实现在用户注册时为用户指定角色

相信熟悉ASP.NET的朋友肯定使用过VisualStudio提供的Login控件。ASP.NET2.0把成员和角色管理封装成了一个完整的系统,对于小型的系统我们可以使用登录控件和ASP.NET网站管理工具来实现成员和角色管理(无需写一行代码),对于大型的系统我们也可以使用ASP.NET的成员资格和角色管理器API来实现自定义的成员和角色管理。

系统提供的CreateUserWizard控件是用来实现用户注册或添加新用户的,但是通过该组件创建用户我们无法为要创建的用户指定角色。

我们可以利用ASP.NET网站管理工具很容易的为系统添加可能用到的预定义角色,关键是当用户注册或者管理员在添加用户时怎样指定用户的角色呢?

我建议此时不要用CreateUserWizard控件,我们可以自己设计一个创建用户的界面,利用Membership类和Roles类来实现添加新用户的同时为用户指定角色。


protected void btn_CreateUser_Click(object sender, EventArgs e)

{

string username = UserName.Text.ToString();

string password = Password.Text.ToString();

string email = Email.Text.ToString();

string passwordQuestion = Question.Text.ToString();

string passwordAnswer = Answer.Text.ToString();

string role=DropDownList1.SelectedValue.ToString();

//下拉菜单,选择要添加用户所属角色

// 是否允许新用户登录

bool isApproved = true;

MembershipCreateStatus membershipCreateStarus;

Membership.CreateUser(username, password, email, passwordQuestion,

passwordAnswer, isApproved, out membershipCreateStarus);

// membershipCreateStarus是一个枚举,为了简单我们直接输出枚举名称

string a = membershipCreateStarus.ToString();

if (a == "Success") //用来判断刚才添加用户的操作是否成功

{

Roles.AddUsersToRole(new string[] { username }, role);

}

}

通过上述方式可以很容易的实现在添加新用户时为用户制定所属角色。


Roles.AddUsersToRoles 方法

http://msdn.microsoft.com/zh-cn/library/system.web.security.roles.adduserstoroles(v=vs.80).aspx

  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值