Now a version is available for MVC 4 with .Net 4.5!
EfMembership is a complete Asp.net MVC3 membership project using Entity Framework Code First. It allows the .NET developer to create new MVC 3 projects with membership and role management already completed. Manage users and roles with complete ready to use admin screens.
Add and remove users and roles out of the box! Simply install the template and you are ready to run.
You can use Sql Server, Sql Server Express or Sql Server Compact CE 4.0 to store users. Users can change their passwords by email, with complete solutions for password retrieval and password strength indicators. You can create entirely separate applications and use the same database for each version of users and roles. Users and roles can add and update pictures, allowing a user to completely personalize their account.
When debugging, you can have the template create sample users and roles by simple settings in the web config. Emails can be sent for new user registrations and the emails are completely customizable using web config settings.
No Profile Provider or Membership Provider
In the heart of EfMembership lies the UserService and EfRoleProvider. The role provider is an implementation of the RoleProvider class for managing Roles. This allows the developer to take advantage of Authorize tags on controller methods to insure only certain role members can access protected site areas.
The UserService is not an implementation of the Membership Provider, which we find to be cumbersome and overbearing for the majority of membership implementations. The UserService is a lightweight class to manage users in the form of User entities. You can easily add to the User class with your own custom properties without the need for implementing Profiles.
Your Webconfig simply declares the Role Provider for your project, and uses forms authentication. That’s it!
You can then add the new properties of your users by directly adding the properties to the User class. Roles can also by extended the same way, as both the Role and User classes are both partial classes, you can keep the existing code intact, and create more features in your added partial classes.
Use SQL Server Compact
To save on database costs, you can use SQL Server Compact CE to store your users and roles. The template has been reliably tested with over 20,000 users on Sql Server Compact CE. The template is ready to run with a database in the App_Data folder. To use Sql Server Express or SQL server, simply change your connection string in the web config.
To save time, the styles for the admin screens are simple and clean. You can deploy the style of the site as is, or easily modify the colors and fonts by updating a few css classes. Your membership screens are all ready to go, complete with user search functionality, paging records with custom page counts, adding and removing multiple members at once, seeing who is online in a single screen and allowing users to cancel their own accounts.
Read Only Roles and Users
You can mark users and roles as read only. This means that Administrators and Admin accounts can be created and they cannot be deleted by any other member. Read only roles also cannot be delted or renamed, insuring that any Authorize attributes that have specific role names are always respected. Read only members of read only roles cannot be removed. This insures accounts like the Admin can never be removed from the Administrators role.
We have already handled all the validation rules for user and role entry for you. There is even a setting to show or hide the password strength indicator on the registration screens. Users can edit their own properties of their accounts, and new users are automatically added to the Users role.
View your Site Settings in the Administration Screen
To view your site settings, simply use the administration screen.
There, you can see every configuration that is set for your site including email settings, database connections, application names and Entity Framework initialization settings.
Most features can be changed by editing your web config, and for most settings a restart is not required.
Create Multiple Sub Applications
In the full version of EfMembership, you can create sub applications that allow a separate set of users and roles. This means you can allow other members to manage roles on users for their own sub application.
Royalty Free With Complete Source Code
EfMembership is royalty free, so you can use the product as much as you like. You get complete source code to modify anything you choose. Simply install the template in Visual Studio 2010 and you can create as many sites with full membership as many times as you like.
Feature Packed Here are the features included with EfMembership (Trial Version may disable some features):
Complete Source Code
Use Sql Compact DB
Use Sql Server
Use Sql Server Express
Users can have photos
Users can cancel accounts
Read Only Users
Read Only Roles
Roles Can Have Photos
See Who is Online
See Stale Accounts
Add and Remove Members
Search for users
Create default users
Create default roles
Users Can Reset Passwords
Admins Reset User Passwords
Email New Members
Expire Password Resets
Search for Users
Bulk Edit Members
Create New Applications
Easily Change Messages
View Site Settings