MembershipUser和Membership类的使用

 

MembershipUser类的使用(需引用System.Web.Security )

MembershipUser 对象用于表示成员资格数据存储区中的单个成员资格用户。该对象公开有关成员资格用户的信息(如电子邮件地址),并为成员资格用户提供功能(如更改或重置其密码的功能)。

MembershipUser 对象可由 GetUser CreateUser 方法返回,或是作为 GetAllUsersFindUsersByName FindUsersByEmail 方法返回的 MembershipUserCollection 的一部分返回。

当要更新现有成员资格用户的信息时,UpdateUser 方法需要 MembershipUser 对象。

MembershipUser 成员 

公开和更新成员资格数据存储区中的成员资格用户信息。

下表列出了由 MembershipUser 类型公开的成员。

公共构造函数

名称

说明

MembershipUser

已重载。使用指定的属性值创建新的成员资格用户对象。

受保护的构造函数

名称

说明

MembershipUser

已重载。使用指定的属性值创建新的成员资格用户对象。

公共属性

名称

说明

Comment

获取或设置成员资格用户的特定于应用程序的信息。

CreationDate

获取将用户添加到成员资格数据存储区的日期和时间。

Email

获取或设置成员资格用户的电子邮件地址。

IsApproved

获取或设置一个值,表示是否可以对成员资格用户进行身份验证。

IsLockedOut

获取一个值,该值指示成员资格用户是否因被锁定而无法进行验证。

IsOnline

获取一个值,表示用户当前是否联机。

LastActivityDate

获取或设置成员资格用户上次进行身份验证或访问应用程序的日期和时间。

LastLockoutDate

获取最近一次锁定成员资格用户的日期和时间。

LastLoginDate

获取或设置用户上次进行身份验证的日期和时间。

LastPasswordChangedDate

获取上次更新成员资格用户的密码的日期和时间。

PasswordQuestion

获取成员资格用户的密码提示问题。

ProviderName

获取成员资格提供程序的名称,该提供程序存储并检索成员资格用户的用户信息。

ProviderUserKey

从用户的成员资格数据源获取用户标识符。对应于数据库中的UserId

UserName

获取成员资格用户的登录名。

公共方法

名称

说明

ChangePassword

更新成员资格数据存储区中成员资格用户的密码。

ChangePasswordQuestionAndAnswer

更新成员资格数据存储区中成员资格用户的密码提示问题和密码提示问题答案。

Equals 

已重载。 确定两个 Object 实例是否相等。 (从 Object 继承。)

GetHashCode 

用作特定类型的哈希函数。GetHashCode 适合在哈希算法和数据结构(如哈希表)中使用。 (从 Object 继承。)

GetPassword

已重载。 从成员资格数据存储区获取成员资格用户的密码。

GetType 

获取当前实例的 Type。 (从 Object 继承。)

ReferenceEquals 

确定指定的 Object 实例是否是相同的实例。 (从 Object 继承。)

ResetPassword

已重载。 将用户密码重置为一个自动生成的新密码。

ToString

已重写。 返回成员资格用户的用户名。

UnlockUser

清除用户的锁定状态以便可以验证成员资格用户。

例一(如何获取现有成员资格信息中的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 类型公开的成员。

公共属性

 

名称

说明

ApplicationName

获取或设置应用程序的名称。

EnablePasswordReset

获得一个值,指示当前成员资格提供程序是否配置为允许用户重置其密码。

EnablePasswordRetrieval

获得一个值,指示当前成员资格提供程序是否配置为允许用户检索其密码。

HashAlgorithmType

用于哈希密码的算法的标识符。

MaxInvalidPasswordAttempts

获取锁定成员资格用户前允许的无效密码或无效密码提示问题答案尝试次数。

MinRequiredNonAlphanumericCharacters

获取有效密码中必须包含的最少特殊字符数。

MinRequiredPasswordLength

获取密码所要求的最小长度。

PasswordAttemptWindow

获取在锁定成员资格用户之前允许的最大无效密码或无效密码提示问题答案尝试次数的分钟数。

PasswordStrengthRegularExpression

获取用于计算密码的正则表达式。

Provider

获取对应用程序的默认成员资格提供程序的引用。

Providers

获取一个用于 ASP.NET 应用程序的成员资格提供程序的集合。

RequiresQuestionAndAnswer

获取一个值,该值指示默认成员资格提供程序是否要求用户在进行密码重置和检索时回答密码提示问题。

UserIsOnlineTimeWindow

指定用户在最近一次活动的日期/时间戳之后被视为联机的分钟数。

公共方法

 

名称

说明

CreateUser

已重载。 将新用户添加到数据存储区。

DeleteUser

已重载。 从数据库中删除一个用户。

Equals 

已重载。 确定两个 Object 实例是否相等。 (从 Object 继承。)

FindUsersByEmail

已重载。 获取一个成员资格用户的集合,其中的电子邮件地址包含要匹配的指定电子邮件地址。

FindUsersByName

已重载。 获取一个成员资格用户的集合,其中的用户名包含要匹配的指定用户名。

GeneratePassword

生成指定长度的随机密码。

GetAllUsers

已重载。 获取数据库中用户的集合。

GetHashCode 

用作特定类型的哈希函数。GetHashCode 适合在哈希算法和数据结构(如哈希表)中使用。 (从 Object 继承。)

GetNumberOfUsersOnline

获取当前访问应用程序的用户数。

GetType 

获取当前实例的 Type。 (从 Object 继承。)

GetUser

已重载。 从数据源获取成员资格用户的信息。

GetUserNameByEmail

获取一个用户名,其中该用户的电子邮件地址与指定的电子邮件地址匹配。

ReferenceEquals 

确定指定的 Object 实例是否是相同的实例。 (从 Object 继承。)

ToString 

返回表示当前 Object String。 (从 Object 继承。)

UpdateUser

用指定用户的信息更新数据库。

ValidateUser

验证提供的用户名和密码是有效的。

受保护的方法

 

名称

说明

Finalize 

允许 Object 垃圾回收回收 Object 之前尝试释放资源并执行其他清理操作。 (从 Object 继承。)

MemberwiseClone 

创建当前 Object 的浅表副本。 (从 Object 继承。)

公共事件

 

名称

说明

ValidatingPassword

在创建用户、更改密码或重置密码时发生。

原文地址:https://www.cnblogs.com/ahuang1118/p/393231.html