ASP.NET MVC 5 中的会员资格提供程序
本文关键字:程序 MVC NET ASP | 更新日期: 2023-09-27 18:31:58
我有一个项目,我正在 ASP.NET MVC 5中工作,但它需要使用 ASP.NET 成员资格(而不是身份)。
我找不到太多关于如何完成这项工作的材料。我运行了aspnet_regsql,它在我正在使用的数据库中创建了所有必要的表。当我使用 DB 优先时,我使用这些表更新了 MVC 应用程序中的模型。所以所需的表就在那里。
我接下来应该做什么?
您需要
确定所需的成员资格提供程序并在 Web.Configuration 中进行配置。
因此,假设我们使用的是MS SQL Server和SQL成员资格提供程序,您将需要类似于Web.Config的system.web部分中的以下示例:
<membership defaultProvider="MembershipProvider" userIsOnlineTimeWindow="15">
<providers>
<clear />
<add name="MembershipProvider"
type="System.Web.Security.SqlMembershipProvider"
connectionStringName="SqlConnection"
applicationName="MyApplication"
enablePasswordRetrieval="false"
enablePasswordReset="true"
requiresQuestionAndAnswer="false"
requiresUniqueEmail="true"
passwordFormat="Hashed"
minRequiredNonalphanumericCharacters="0" />
</providers>
</membership>
您需要确保所有设置都符合您的要求,具体而言,您需要确保在 Web.Config 中声明的连接字符串的名称与为 connectionStringName 属性指定的名称相同。该连接字符串必须有权访问并指向使用 aspnet_regsql 创建的数据库表。
从这里开始,它应该只是使用 System.Web.Security 命名空间中的 Membership 类的情况。例如,控制器操作中使用的以下代码应提取当前登录的用户:
MembershipUser user = Membership.GetUser();