How to add ASP.NET Membership Provider in a Empty MVC 4 Project Template?

Installing it

You need to add the following Nuget Packages:

  • EntityFramework

  • Microsoft.AspNet.WebPages.OAuth

    Note: This package will install all the required dependencies automatically for you. This is a detailed list of all nuget packages installed:

    • Microsoft.AspNet.WebPages.WebData

      • Microsoft.AspNet.WebPages.Data
    • DotNetOpenAuth.AspNet

      • DotNetOpenAuth.OpenId.RelyingParty

        • DotNetOpenAuth.OpenId.Core

          • DotNetOpenAuth.Core

            • CodeContracts.Unofficial
      • DotNetOpenAuth.OAuth.Consumer

        • DotNetOpenAuth.OAuth.Core

          • DotNetOpenAuth.Core

            • CodeContracts.Unofficial

Add a reference to

  • System.Transactions

Testing it

Now in order to test it, add the following to the web.config file (Under system.web):

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

Add the following connection string

  <connectionStrings>
    <add name="DefaultConnection" connectionString="Data Source=(LocalDb)\v11.0;Initial Catalog=aspnet-UnitTestQueries.UI-20121105001038;Integrated Security=SSPI;AttachDBFilename=|DataDirectory|\aspnet-UnitTestQueries.UI-20121105001038.mdf" providerName="System.Data.SqlClient" />
  </connectionStrings>

And what I did was to copy the controllers, models, filters and views from the Internet template and just modify things like the namespace and so on until you get it up and running

This is the result (without styles)

Before login

enter image description here

Registering

enter image description here

Logged IN

enter image description here


Check out SimpleMembership, Membership Providers, Universal Providers and the new ASP.NET 4.5 Web Forms and ASP.NET MVC 4 templates to get an info about what you need to set SimpleMembership inside empty template.

You my also want to check out very nice posts from Scott Allen:

Perils of the MVC4 AccountController

Build Your Own Membership System For ASP.NET MVC - Part I

and

Build Your Own Membership System For ASP.NET MVC - Part II