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项目的方法有哪些?
28 4
|
1月前
|
芯片
电容在ESD测试中的选用方法
电容在ESD测试中的选用方法
28 2
|
1月前
|
Java Spring
使用JDBCTemplate实现与Spring结合,方法公用 ——测试(EmpDaoImplTest)
使用JDBCTemplate实现与Spring结合,方法公用 ——测试(EmpDaoImplTest)
9 0
|
3月前
|
敏捷开发 存储 安全
敏捷方法:什么是软件测试中的敏捷模式?
敏捷方法:什么是软件测试中的敏捷模式?
|
1天前
|
测试技术 API Python
Appium控件交互策略:优化自动化测试效率的关键方法
该文介绍了如何使用Selenium与APP进行交互,包括点击、输入和状态判断等操作。例如,通过element.click()点击控件,element.send_keys()输入文本,以及element.is_displayed()检查元素是否可见。还展示了如何获取元素属性,如resource-id、text和class,并提供了Python代码示例来定位并操作APP元素,如滑动条的显示、可点击性检测及点击滑动条中心位置。在编写测试脚本时,应注意元素定位和状态验证以确保测试稳定性。
8 1
|
2天前
|
API 开发者
免费邮箱API发送邮件测试调试的方法和步骤
本文介绍了使用免费邮箱API如aoksend、Mailgun、SMTP2GO发送邮件的测试调试步骤:选择合适的API,获取访问密钥,配置邮件参数,编写测试代码,调试和测试,查看发送日志,以及优化改进邮件发送功能,确保其稳定运行。
|
17天前
|
自然语言处理 测试技术 持续交付
现代软件测试方法与挑战
传统软件测试方法在当前快速发展的软件开发环境下面临着诸多挑战,因此,现代软件测试方法的探索与应用显得尤为重要。本文将介绍几种现代软件测试方法,并探讨其在应对软件开发挑战方面的作用。
10 0
|
19天前
|
安全 测试技术
深入理解白盒测试:方法、工具与实践
【4月更文挑战第7天】 在软件开发的质量控制过程中,白盒测试是确保代码逻辑正确性的关键步骤。不同于黑盒测试关注于功能和系统的外部行为,白盒测试深入到程序内部,检验程序结构和内部逻辑的正确性。本文将探讨白盒测试的核心技术,包括控制流测试、数据流测试以及静态分析等方法,同时介绍当前流行的白盒测试工具,并讨论如何在实际项目中有效实施白盒测试。文章的目标是为软件测试工程师提供一份综合性指南,帮助他们更好地理解和应用白盒测试技术。

热门文章

最新文章