在Asp.net MVC4 中使用SimpleMembershipProvider

一、创建MVC4项目

运行Visual Studio Express 2012 for Web,新建ASP.NET MVC4 Web 应用程序,命名为“Demo”,选择空模版。这样就创建了一个干净的MVC4应用程序。

二、添加引用

在项目引用上右键,选择“添加引用”打开引用管理器。在“程序集:扩展”中勾选“WebMatrix.Data”和“WebMatrix.WebData”,版本均为“2.0.0.0”,点击“确定”将这两个程序集引用到项目中。

三、配置数据库

 首先在项目App_Data文件夹中添加一个Sql Server数据库文件,命名为"DemoDB"。然后打开web.config文件,在<configuration>节点下添加一个connectionString:

  <connectionStrings>
    <add name="DemoDB" connectionString="Data Source=(LocalDB)v11.0;AttachDbFilename=|DataDirectory|DemoDB.mdf;Integrated Security=True" providerName="System.Data.SqlClient" />
  </connectionStrings>


 

四、配置SimpleMembershipProvider

修改Global.asax文件中的Application_Start方法,注意在该文件中添加对WebMatrix.WebData命名空间的引用。

        protected void Application_Start()
        {
            AreaRegistration.RegisterAllAreas();

            WebApiConfig.Register(GlobalConfiguration.Configuration);
            FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
            RouteConfig.RegisterRoutes(RouteTable.Routes);

       //添加下列代码
WebSecurity.InitializeDatabaseConnection("DemoDB", "Users", "UserId", "UserName", true); }

程序会在启动时执行WebSecurity.InitializeDatabaseConnection()方法,加载SimpleMembershipProvider。

 五、设置登录页面

打开web.config文件,在<system.web>节点下添加authentication设置

    <authentication mode="Forms">
      <forms loginUrl="~/Account/Login" timeout="20"/>
    </authentication>

如果用户没有访问某页面的权限,程序将自动跳转到"~/Account/Login"。同时,这里还把登录后的超时时间设置为20分钟。

原文地址:https://www.cnblogs.com/early-moon/p/3317538.html