SqlMembershipProvider.CreateUser 方法(测试已通过)

简介:

参数

username

新用户的用户名。

password

新用户的密码。

email

新用户的电子邮件地址。

passwordQuestion

新用户的密码提示问题。

passwordAnswer

新用户的密码提示问题答案。

isApproved

是否允许验证新用户。

providerUserKey

唯一标识 SQL Server 数据库中成员资格用户的 Guid

status

一个 MembershipCreateStatus 值,指示是否成功创建用户。

返回值

用于新创建用户的 MembershipUser 对象。如果没有创建用户,此方法将返回 空引用(在 Visual Basic 中为 Nothing)。

备注

新用户由已配置的 ApplicationName 进行标识。

如果 RequiresUniqueEmail 属性设置为 true,并且为 email 参数指定 空引用(在 Visual Basic 中为 Nothing) 或空字符串 (""),则用户创建将失败。如果 RequiresUniqueEmail 属性设置为 true 并且为 email 参数指定的值与数据库中 ApplicationName 的现有用户的电子邮件地址重复,用户创建也将失败。

用户名的最大长度为 256 个字符。电子邮件地址的最大长度为 256 个字符。明文形式的密码,或者密码在哈希计算或加密后,最大长度为 128 个字符。

其他将导致用户创建失败的情况:

  • password 参数为 空引用(在 Visual Basic 中为 Nothing) 或是修整后变为空字符串。

  • password 参数的长度小于 MinRequiredPasswordLength 属性中指定的值。

  • password 参数中的非字母字符数小于 MinRequiredNonAlphanumericCharacters 属性中指定的值。

  • password 参数未通过 PasswordStrengthRegularExpression 属性中的正则表达式的验证。

  • 自定义密码验证代码在执行 ValidatingPassword 事件的过程中取消了用户创建。

  • RequiresQuestionAndAnswer 属性为 true 并且 passwordAnswer 参数为 空引用(在 Visual Basic 中为 Nothing) 或修整后的空字符串。

  • passwordAnswer 参数是空字符串。

  • passwordAnswer 参数的长度大于 128 个字符。

  • RequiresQuestionAndAnswer 属性为 true 并且密码提示问题为 空引用(在 Visual Basic 中为 Nothing) 或修整后的空字符串。

  • passwordQuestion 参数是空字符串。

  • passwordQuestion 参数的长度大于 256 个字符。

  • providerUserKey 参数设置为非 System.Guid 类型的对象。

  • providerUserKey 参数与现有用户键值重复。

  • username 参数与现有用户名重复。

删除所有字符串参数值的前导和尾随空格。

示例

View Code

使用方法:

在已有的项目DNNDEMO中添加一个testCreateUsers.aspx文件,然后将上面的代码粘贴过去。

在web.config中将RequiresQuestionAndAnswer 设置为true,因为默认的DNN中的web.config这个属性是false。

点击创建以后去数据库中查看就能找到我们创建的用户了,不过在Users表中没有这个用户,只在aspnet_Membership表中找到了创建的用户。

下面是通过reflector得到的DNN使用SqlMembershipProvider的CreateUser的源代码:

View Code

 PS:2012-6-20

这样操作知识简单的创建用户,跟在DNN注册界面上注册用户并不相同,注册用户比创建用户更加麻烦。






本文转自xwdreamer博客园博客,原文链接:http://www.cnblogs.com/xwdreamer/archive/2010/01/01/2297179.html,如需转载请自行联系原作者



目录
相关文章
|
1月前
|
安全 测试技术
BOSHIDA DC电源模块的安全性能评估与测试方法
BOSHIDA DC电源模块的安全性能评估与测试方法
 BOSHIDA DC电源模块的安全性能评估与测试方法
|
1月前
|
安全
DC电源模块的安全性能评估与测试方法
DC电源模块的安全性能评估与测试方法 DC电源模块的安全性能评估与测试方法应包括以下几个方面: 1. 输入安全性测试:包括输入电压范围、输入电压稳定性、输入电流范围、输入电流保护等方面的测试。测试方法可以是逐步增加输入电压或输入电流,观察模块的工作状态和保护功能。
DC电源模块的安全性能评估与测试方法
|
1月前
|
监控 JavaScript 前端开发
在生产环境中测试和监控Vue项目的方法有哪些?
在生产环境中测试和监控Vue项目的方法有哪些?
24 4
|
1月前
|
芯片
电容在ESD测试中的选用方法
电容在ESD测试中的选用方法
28 2
|
29天前
|
Java Spring
使用JDBCTemplate实现与Spring结合,方法公用 ——测试(EmpDaoImplTest)
使用JDBCTemplate实现与Spring结合,方法公用 ——测试(EmpDaoImplTest)
8 0
|
3月前
|
敏捷开发 存储 安全
敏捷方法:什么是软件测试中的敏捷模式?
敏捷方法:什么是软件测试中的敏捷模式?
|
3月前
|
敏捷开发 机器学习/深度学习 人工智能
最实用测试方法——TIA
最实用测试方法——TIA
|
9天前
|
自然语言处理 测试技术 持续交付
现代软件测试方法与挑战
传统软件测试方法在当前快速发展的软件开发环境下面临着诸多挑战,因此,现代软件测试方法的探索与应用显得尤为重要。本文将介绍几种现代软件测试方法,并探讨其在应对软件开发挑战方面的作用。
10 0
|
24天前
|
传感器 监控 算法
【软件设计师备考 专题 】模块测试的方法和实践
【软件设计师备考 专题 】模块测试的方法和实践
68 0
|
24天前
|
安全 测试技术
【软件设计师备考 专题 】软件测试的原则与方法:确保软件质量的关键步骤
【软件设计师备考 专题 】软件测试的原则与方法:确保软件质量的关键步骤
39 0