Guidelines to integrate RavenDB with ASP.NET MVC application

Create a new ASP.NET MVC project with the Authentication type set as Individual User Accounts

File -> New -> Project -> Web -> ASP.NET Web Application
Create New Project

Replace Entity Framework with RavenDB as storage provider using NuGet Package Manager

Uninstall-Package Microsoft.AspNet.Identity.EntityFramework
Uninstall-Package EntityFramework
Install-Package CreativeColon.Raven.Identity
Replace Entity Framework with RavenDB
Note: You might need to restart Visual Studio for Entity Framework to be completely removed.

Delete these files from the project as they're not required anymore

App_Start/IdentityConfig.cs
Models/IdentityModels.cs
Remove Unwanted Files

Add these namespaces to the given files

Add Raven.Identity namespaces

Add Connection String for RavenDB and name it as RavenConnection to avoid any effort

<add name="RavenConnection" connectionString="Url=http://localhost:8080;Database=IdentityDB" />
Add required Connection String

Do this only if you've NOT named your Connection String as RavenConnection

<add name="MyNoSqlDB" connectionString="Url=http://localhost:8080;Database=IdentityDB" />

Open App_Start/Startup.Auth.cs and replace Line 1 with Line 2

1. app.CreatePerOwinContext(ApplicationDbContext.Create);
2. app.CreatePerOwinContext(() => { return ApplicationDbContext.Create("MyNoSqlDB"); });
Call Create Over-ride for other Connection String

For enabling Email Verification and Forgot Password functionalities

Add SMTP details in web.config file

<system.net>
  <mailSettings>
    <smtp deliveryMethod="Network" from="SenderEmailAddress">
      <network host="SMTPHost" port="587" userName="Username" password="Password" enableSsl="true" />
    </smtp>
  </mailSettings>
</system.net>

Visit MVC Template with Raven Identity which has all the changes required for this integration