Поделиться через


ProfileModule.Personalize Событие

Определение

Происходит до того, как создается профиль пользователя.

public:
 event System::Web::Profile::ProfileEventHandler ^ Personalize;
public event System.Web.Profile.ProfileEventHandler Personalize;
member this.Personalize : System.Web.Profile.ProfileEventHandler 
Public Custom Event Personalize As ProfileEventHandler 

Тип события

Примеры

В следующем примере кода показано событие, Personalize объявленное в файле Global.asax для приложения. Код события загружает профиль пользователя на основе членства в роли.

public void Profile_Personalize(object sender, ProfileEventArgs args)
{
  ProfileCommon userProfile;

  if (User == null) { return; }

  userProfile = (ProfileCommon)ProfileBase.Create(User.Identity.Name);

  if (User.IsInRole("Administrators"))
    userProfile = userProfile.GetProfile("Administrator");
  else
    if (User.IsInRole("Users"))
      userProfile = userProfile.GetProfile("User");
    else
      userProfile = userProfile.GetProfile("Guest");

  if (userProfile != null)
    args.Profile = userProfile;
}
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

Комментарии

Событие Personalize возникает во время HttpApplication.AcquireRequestState события. Вы можете получить доступ к Personalize событию ProfileModule класса в файле Global.asax для приложения ASP.NET с помощью глобального Profile_Personalize события, как показано в примере для этого раздела.

Событие можно использовать для Personalize указания пользовательского профиля. ProfileEventArgs.Profile Если значение свойства, указанное ProfileEventHandler для обработчика событий для Personalize события, имеет значение, не null равное по Personalize окончании события, то ProfileModule будет использовать указанное ProfileEventArgs.Profile значение свойства в качестве значения Profile свойства текущего HttpContextобъекта .

Применяется к