2012-03-19 2 views
0

J'ai développé un HttpModule pour assigner des thèmes aux pages pendant son événement PreInit du profil de l'utilisateur connecté. Mais il semble que le profil n'est pas initialisé au moment où j'y accède. Y at-il un événement spécifique après lequel je devrais accéder au profil pour un utilisateur similaire à la page d'accès cotnrols après Init événement. btw je cours sur l'exécution d'ASP.NET 2.0 et de fournisseur de profil personnalisé.Quand UserProfile est initialisé

public void CurrentPageOnPreInit(object sender, EventArgs e) 
    { 
     //Get the page currently requested 
     Page currentPage = (Page)sender; 

     //Get the user profile 
     ProfileCommon userProfile = HttpContext.Current.Profile as ProfileCommon; 


      //check if user profile has theme set 
      if (userProfile != null && !string.IsNullOrEmpty(userProfile.Theme)) 
      { 
       //retrieve from profile 
       currentPage.Theme = userProfile.Theme; 

où la méthode ci-dessus exécute sur scène PreInit de chaque page sur ma demande.

Répondre

0

Il doit être initialisé dans la méthode OnPreInit de la classe. Override void OnPreInit (EventArgs e); Pour l'exécution des méthodes, suivez ce lien pour savoir quand la méthode appellera le cycle de vie asp.net.

+0

depuis que j'ai une implémentation personnalisée dois-je le faire explicitement ?? comme 'ProfileCommon.Create (UserName)' je ne l'espère pas car cela est automatiquement effectué par le framework asp.net quelque part au cours de l'analyse de la page je cherche l'événement exact que cela est effectué – Deeptechtons

Questions connexes