• 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

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

  • 相关阅读:
    浅谈工作流的作用
    WinForm上播放Flash文件
    C#反序列化 “在分析完成之前就遇到流结尾”
    UML类图详解
    关于C#中Thread.Join()的一点理解
    c# 反射的用法
    C#多线程学习笔记之(abort与join配合使用)
    UML用例图总结
    asp.net 发布到IIS中出现”处理程序“PageHandlerFactoryIntegrated”在其模块列表中有一个错误模块“ManagedPipelineHandler”“错误的解决方法
    C#序列化和反序列化
  • 原文地址:https://www.cnblogs.com/ahuang1118/p/393231.html
Copyright © 2020-2023  润新知