Describe the Provider Model and Personalization in ASP.NET 2.0?
The Provider model in ASP.NET 2.0 is based on the Provider Design Pattern that was created in the
year 2002 and later implemented in the .NET Framework 2.0.
The Provider Model supports automatic creation of users and their respective roles by creating entries
of them directly in the SQL Server (May even use MS Access and other custom data sources).
So actually, this model also supports automatically creating the user table's schema.
The Provider model has 2 security providers in it: Membership provider and Role Provider. The
membership provider saves inside it the user name (id) and corresponding passwords, whereas the Role
provider stores the Roles of the users.
For SQL Server, the SqlMembershipProvider is used, while for MS Access, the AccessMembershipProvider is used.
The Security settings may be set using the website adminstration tool.
Automatically, the AccessMembershipProvider creates a Microsoft Access database file named aspnetdb.mdb inside the
application's App_Data folder. This contains 10 tables.
ASP.NET 2.0 Personalization - Personalization allows information about visitors to be persisted on a data
store so that the information can be useful to the visitor when they visit the site again.
In ASP.NET 2.0, this is controlled by a Personalization API.
Before the Personalization Model came into existence, the prior versions of ASP.NET used of the old
Session object to take care of re-visits. Now comes the Profile object.
In order to use a Profile object, some settings need to be done in web.config. The example below shall explain
how to use a profile object:
//Add this to System.Web in web.config
Security Authentication Process
Website Admin Tool
Mixed Mode Authentication
Provider Model & Personalization
<add name="FirstName" type="System.String"/>
<add name="LastName" type="System.String"/>
'In Page_Load event, add the following...
If Profile.FirstName <> "" Then
Panel1.Visible = False
Response.Write("Welcome Back Dear :, " & Profile.FirstName & ", " & Profile.LastName)
Panel1.Visible = True
'Here is the code how to save the profile properties in an event to save it
Profile.FirstName = txtFirstName.Text
Profile.LastName = txtLastName.Text
More Interview Questions...