Click here to Skip to main content
Click here to Skip to main content

Custom membership provider for the ADO.NET Entity Framework

, 3 Jan 2013 CPOL
Rate this:
Please Sign up or sign in to vote.
Custom membership provider implementation for the ADO.NET Entity Framework.


Note: This article has been superseded by the following code project article. 

This article describes the implementation of a custom membership provider for the ADO.NET entity framework. The code presented in this article fully complies with Microsoft's provider model design pattern. It also leverages the LINQ to Entities feature introduced with framework 3.5.


It is required to have a basic understanding of the ADO.NET Entity Framework and the ASP.NET membership provider model in order to successfully integrate the presented solution.

Using the code

To configure the attached sample, the following steps have to be taken into account:

  1. Create a database (e.g., EFDataModel).
  2. Run the CreateUserTable.sql script located in the DatabaseScripts solution folder.
  3. Modify the connection string for the Entity Framework in the App.config file of the SmartSoft.EFMembershipProvider.DataLayer project.
  4. Modify connection string for the Entity Framework in the Web.config file of the Web application.

If you want to integrate the custom membership provider into your existing application, you might have to replace the object context EFDataModelEntities within the membership provider class according to your entity model.

Depending on your data model, the method DeleteUser within the membership provider class has to be extended from line 698 onwards in order to delete/mark all user related data.


  • 29/10/2008 - Initial article posted.


This article, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)


About the Author

Michael Ulmann
Architect Helvetic Solutions
Australia Australia
MCAD, MCPD Web Developer 2.0, MCPD Enterprise Developer 3.5

My company: Helvetic Solutions
My blog: Sitecore Experts

Hopp Schwiiz Smile | :)

Comments and Discussions

GeneralRe: Role and Profile providers PinmemberMichael Ulmann1-Aug-09 0:47 
GeneralAdd'l Providers PinmemberJeff Bowman24-Jul-09 11:19 
GeneralRe: Add'l Providers PinmemberMichael Ulmann1-Aug-09 15:10 
GeneralRe: Add'l Providers PinmemberJeff Bowman1-Aug-09 20:00 
GeneralHydrating from EFExtensions Pinmemberjonranes13-Mar-09 0:24 
GeneralRe: Hydrating from EFExtensions PinmemberMichael Ulmann1-Aug-09 15:10 
GeneralMy vote of 2 Pinmemberandrewward16-Feb-09 3:11 
QuestionAre the other providers ready? Pinmemberjetset3211-Jan-09 9:49 
AnswerRe: Are the other providers ready? PinmemberMichael Ulmann11-Jan-09 12:34 
GeneralRe: Are the other providers ready? Pinmemberjetset3212-Jan-09 9:22 
GeneralRe: Are the other providers ready? PinmemberRoger Jakobsson13-Feb-09 12:01 
GeneralRe: Are the other providers ready? PinmemberMichael Ulmann1-Aug-09 15:10 
AnswerRe: Are the other providers ready? PinmemberMichael Ulmann15-Nov-14 11:43 
GeneralA forgotten thing PinmemberFatihSever2-Dec-08 16:17 
QuestionRe: A forgotten thing Pinmemberalibaba0699-Dec-08 0:37 
AnswerRe: A forgotten thing PinmemberFatihSever12-Dec-08 2:09 
GeneralRe: A forgotten thing PinmemberMichael Ulmann15-Dec-08 18:12 
QuestionAdding an entry in the DB Pinmemberalibaba0691-Dec-08 1:19 
GeneralThanks a lot PinmemberFatihSever26-Nov-08 12:26 
Thank you so much. Really saved my day. Thanks again and again...
JokeRe: Thanks a lot Pinmemberalibaba06929-Nov-08 9:32 
AnswerRe: Thanks a lot PinmemberMichael Ulmann30-Nov-08 12:24 
Generalfor dotnet2.0 not linq Pinmemberhungud9-Nov-08 21:05 
AnswerRe: for dotnet2.0 not linq PinmemberMichael Ulmann9-Nov-08 23:54 
RantRe: for dotnet2.0 not linq Pinmemberhungud10-Nov-08 0:44 
GeneralRe: for dotnet2.0 not linq PinmemberAlexRiley14-Feb-09 9:25 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.

| Advertise | Privacy | Terms of Use | Mobile
Web02 | 2.8.150414.1 | Last Updated 3 Jan 2013
Article Copyright 2008 by Michael Ulmann
Everything else Copyright © CodeProject, 1999-2015
Layout: fixed | fluid