小心Roles命名空间下的东东们

该博客为转载内容,转载自https://www.cnblogs.com/tishifu/archive/2005/12/16/298172.html ,涉及数据库相关知识。
我的天!

我用一个textbox输入用户名,一个DropDownList输入Role名,输入一个不存在的用户名,确认!

执行Roles.AddUserToRole()方法。

大家猜猜会怎么样?

Roles.AddUserToRole()报错?

不要异想天开了,不可能的,通过了,而且成功!

表面现象?

不是吧!打开数据库!

我的天,微软让我不得不叫了!

aspnet_Users
aspnet_UsersInRoles

加入了相应的记录。

我倒!

没有办法,看看帮助文件,查查AddUserToRole方法的资料。它并不返回任何值。也就是如果输入的两个值都是string就通过。

看来我们都要小心使用这个了。

我采取了以下的方法解决这个问题。

 1 None.gif          try
 2 ExpandedBlockStart.gifContractedBlock.gif         dot.gif {
 3InBlock.gif            if (Membership.FindUsersByName(TextBox1.Text.ToString()).Count == 1)
 4ExpandedSubBlockStart.gifContractedSubBlock.gif            dot.gif{
 5InBlock.gif                Roles.AddUserToRole(TextBox1.Text.ToString(), DropDownList1.SelectedItem.Value.ToString());
 6InBlock.gif                Error1.Text = "成功!";
 7ExpandedSubBlockEnd.gif            }

 8InBlock.gif            else
 9ExpandedSubBlockStart.gifContractedSubBlock.gif            dot.gif{
10InBlock.gif                Error1.Text = "失败!";
11ExpandedSubBlockEnd.gif            }

12ExpandedBlockEnd.gif        }

13 None.gif         catch
14 ExpandedBlockStart.gifContractedBlock.gif         dot.gif {
15InBlock.gif            Error1.Text = "失败!";
16ExpandedBlockEnd.gif        }

不知道大家还有没有其他的办法。

转载于:https://www.cnblogs.com/tishifu/archive/2005/12/16/298172.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值