ProfileModule.Personalize Event

 

Occurs before the user profile is created.

Namespace:   System.Web.Profile
Assembly:  System.Web (in System.Web.dll)

Public Event Personalize As ProfileEventHandler

The Personalize event is raised during the HttpApplication.AcquireRequestState event. You can access the Personalize event of the ProfileModule class in the Global.asax file for your ASP.NET application using the Profile_Personalize global event as shown in the example for this topic.

You can use the Personalize event to specify a custom user profile. If the ProfileEventArgs.Profile property value specified for the ProfileEventHandler event handler for the Personalize event is set to a value that is not null when the Personalize event ends, then the ProfileModule will use the specified value of the ProfileEventArgs.Profile property as the value of the Profile property of the current HttpContext.

The following code example shows the Personalize event declared in the Global.asax file for an application. The event code loads a user profile for a user based on role membership.

Public Sub Profile_Personalize(sender As Object, args As ProfileEventArgs)
  Dim userProfile As ProfileCommon

  If User Is Nothing Then Return

  userProfile = CType(ProfileBase.Create(User.Identity.Name), ProfileCommon)

  If User.IsInRole("Administrators") Then
    userProfile = userProfile.GetProfile("Administrator")
  Else
    If User.IsInRole("Users") Then
      userProfile = userProfile.GetProfile("User")
    Else
      userProfile = userProfile.GetProfile("Guest")
    End If
  End If

  If Not userProfile Is Nothing Then _
    args.Profile = userProfile
End Sub

.NET Framework
Available since 2.0
Return to top
Show: