MembershipUser和Membership类的使用
MembershipUser类的使用(需引用System.Web.Security )
MembershipUser 对象用于表示成员资格数据存储区中的单个成员资格用户。该对象公开有关成员资格用户的信息(如电子邮件地址),并为成员资格用户提供功能(如更改或重置其密码的功能)。
MembershipUser 对象可由 GetUser 和 CreateUser 方法返回,或是作为 GetAllUsers、FindUsersByName 和 FindUsersByEmail 方法返回的 MembershipUserCollection 的一部分返回。
当要更新现有成员资格用户的信息时,UpdateUser 方法需要 MembershipUser 对象。
MembershipUser 成员
公开和更新成员资格数据存储区中的成员资格用户信息。
下表列出了由 MembershipUser 类型公开的成员。
名称 |
说明 |
已重载。使用指定的属性值创建新的成员资格用户对象。 |
名称 |
说明 |
已重载。使用指定的属性值创建新的成员资格用户对象。 |
名称 |
说明 |
获取或设置成员资格用户的特定于应用程序的信息。 |
|
获取将用户添加到成员资格数据存储区的日期和时间。 |
|
获取或设置成员资格用户的电子邮件地址。 |
|
获取或设置一个值,表示是否可以对成员资格用户进行身份验证。 |
|
获取一个值,该值指示成员资格用户是否因被锁定而无法进行验证。 |
|
获取一个值,表示用户当前是否联机。 |
|
获取或设置成员资格用户上次进行身份验证或访问应用程序的日期和时间。 |
|
获取最近一次锁定成员资格用户的日期和时间。 |
|
获取或设置用户上次进行身份验证的日期和时间。 |
|
获取上次更新成员资格用户的密码的日期和时间。 |
|
获取成员资格用户的密码提示问题。 |
|
获取成员资格提供程序的名称,该提供程序存储并检索成员资格用户的用户信息。 |
|
从用户的成员资格数据源获取用户标识符。对应于数据库中的UserId |
|
获取成员资格用户的登录名。 |
名称 |
说明 |
更新成员资格数据存储区中成员资格用户的密码。 |
|
更新成员资格数据存储区中成员资格用户的密码提示问题和密码提示问题答案。 |
|
用作特定类型的哈希函数。GetHashCode 适合在哈希算法和数据结构(如哈希表)中使用。 (从 Object 继承。) |
|
已重载。 从成员资格数据存储区获取成员资格用户的密码。 |
|
确定指定的 Object 实例是否是相同的实例。 (从 Object 继承。) |
|
已重载。 将用户密码重置为一个自动生成的新密码。 |
|
已重写。 返回成员资格用户的用户名。 |
|
清除用户的锁定状态以便可以验证成员资格用户。 |
例一(如何获取现有成员资格信息中的UserId值):
using System.Web.Security;
MembershipUser u = Membership.GetUser(HttpContext.Current.User.Identity.Name);//根据当前页面上已登录用户来获取成员资格对象
if (u != null) //判断用户是否已登录
{
String CurrentUserId=u.ProviderUserKey.tostring(); //由于属性ProviderUserKey值为GUID类型,需使用tostring()方法取得其字符串值。
String Email= u.Email;
String passwordQuestion= u.PasswordQuestion;
}
例二(建立新用户):
MembershipCreateStatus status;
protected void Button1_Click(object sender, EventArgs e)
{
MembershipUser u=Membership.CreateUser("test2","test2?test2","test2@126.com","who are you?","test222",true,out status);
if (u == null)
{
Response.Write("创建用户失败!");
}
else
{
Response.Write("创建用户成功!");
}
}
例三(删除用户):
protected void Button2_Click(object sender, EventArgs e)
{
if (Membership.DeleteUser("test2", true))
{
Response.Write("删除用户成功!");
}
else
{
Response.Write("删除用户失败!");
}
}
Membership 成员
验证用户凭据并管理用户设置。无法继承此类。
下表列出了由 Membership 类型公开的成员。
|
名称 |
说明 |
获取或设置应用程序的名称。 |
||
获得一个值,指示当前成员资格提供程序是否配置为允许用户重置其密码。 |
||
获得一个值,指示当前成员资格提供程序是否配置为允许用户检索其密码。 |
||
用于哈希密码的算法的标识符。 |
||
获取锁定成员资格用户前允许的无效密码或无效密码提示问题答案尝试次数。 |
||
获取有效密码中必须包含的最少特殊字符数。 |
||
获取密码所要求的最小长度。 |
||
获取在锁定成员资格用户之前允许的最大无效密码或无效密码提示问题答案尝试次数的分钟数。 |
||
获取用于计算密码的正则表达式。 |
||
获取对应用程序的默认成员资格提供程序的引用。 |
||
获取一个用于 ASP.NET 应用程序的成员资格提供程序的集合。 |
||
获取一个值,该值指示默认成员资格提供程序是否要求用户在进行密码重置和检索时回答密码提示问题。 |
||
指定用户在最近一次活动的日期/时间戳之后被视为联机的分钟数。 |
|
名称 |
说明 |
已重载。 将新用户添加到数据存储区。 |
||
已重载。 从数据库中删除一个用户。 |
||
已重载。 获取一个成员资格用户的集合,其中的电子邮件地址包含要匹配的指定电子邮件地址。 |
||
已重载。 获取一个成员资格用户的集合,其中的用户名包含要匹配的指定用户名。 |
||
生成指定长度的随机密码。 |
||
已重载。 获取数据库中用户的集合。 |
||
用作特定类型的哈希函数。GetHashCode 适合在哈希算法和数据结构(如哈希表)中使用。 (从 Object 继承。) |
||
获取当前访问应用程序的用户数。 |
||
已重载。 从数据源获取成员资格用户的信息。 |
||
获取一个用户名,其中该用户的电子邮件地址与指定的电子邮件地址匹配。 |
||
确定指定的 Object 实例是否是相同的实例。 (从 Object 继承。) |
||
用指定用户的信息更新数据库。 |
||
验证提供的用户名和密码是有效的。 |
|
名称 |
说明 |
允许 Object 在“垃圾回收”回收 Object 之前尝试释放资源并执行其他清理操作。 (从 Object 继承。) |
||
创建当前 Object 的浅表副本。 (从 Object 继承。) |
|
名称 |
说明 |
在创建用户、更改密码或重置密码时发生。 |