[Vb.NET et Sharepoint] Usercontrol et variable de session (Résolu)

Usercontrol et variable de session (Résolu) [Vb.NET et Sharepoint] - C#/.NET managed - Programmation

Marsh Posté le 13-06-2006 à 12:17:12    

J'ai créé un usercontrol.
 
Sur la page aspx qui le contient j'ai bien EnableSessionState à 'true'
 
Dés que dans le code du UserControl j'essaye d'utiliser une variable de session j'ai l'erreur:
 
"L'état de session ne peut être utilisé que lorsque enableSessionState a la valeur true, dans un fichier de configuration ou dans la directive de page"
 
Ma question est donc la suivante: "Est-il possible d'utiliser des variables de session dans un usercontrol ? et si oui, comment ?"
 
D'avance merci à tous !


Message édité par Fredaxe le 16-06-2006 à 08:58:23
Reply

Marsh Posté le 13-06-2006 à 12:17:12   

Reply

Marsh Posté le 13-06-2006 à 13:17:42    

et dans ton web.config, il est à quelle valeur ton "enableSessionState" ?

Reply

Marsh Posté le 13-06-2006 à 14:31:03    

_Mose_ a écrit :

et dans ton web.config, il est à quelle valeur ton "enableSessionState" ?


 
il n'y est pas du tout...  :whistle:

Reply

Marsh Posté le 13-06-2006 à 14:32:03    

J'ai juste:
 

Code :
  1. <sessionState
  2.             mode="InProc"
  3.             stateConnectionString="tcpip=127.0.0.1:42424"
  4.             sqlConnectionString="data source=127.0.0.1;Trusted_Connection=yes"
  5.             cookieless="false"
  6.             timeout="20"
  7.     />

Reply

Marsh Posté le 13-06-2006 à 14:57:26    

J'ai ajouté ceci dans le web.config mais j'ai toujours la même erreur:
 

Code :
  1. <pages buffer="true" enableSessionState="true" autoEventWireup="true" />

Reply

Marsh Posté le 13-06-2006 à 20:45:21    

T'as essayer de mettre la directive dans la page où tu en as besoin, plutôt que dans le web.config ?

Code :
  1. <%@ Page EnableSessionState="true" ...>


 
Tu fais du pur l'ASP.Net ? T'as pas un SharePoint derrière par hasard ?

Reply

Marsh Posté le 14-06-2006 à 10:22:00    

_Mose_ a écrit :

T'as essayer de mettre la directive dans la page où tu en as besoin, plutôt que dans le web.config ?

Code :
  1. <%@ Page EnableSessionState="true" ...>


 
Tu fais du pur l'ASP.Net ? T'as pas un SharePoint derrière par hasard ?


 
 
Oui mais pour l'instant je développe mon usercontrol localement sur une page aspx classique et aprés je l'intégre à un projet de type webpart que je publie sur mon site sharepoint. Sur ma page aspx le enablesessionstate est bien à true. Mais quand je fais dans le prerender de mon usercontrol une ligne de type 'Session("Toto" )="Toto"' j'ai l'erreur "L'état de session ne peut être utilisé que lorsque enableSessionState a la valeur true, dans un fichier de configuration ou dans la directive de page"  
 
De plus comme tu le soulignes, la page aspx que j'utilise actuellement n'est pas celle qui hébergera au final la webpart contenant ce usercontrol.
 
Je ne sais pas si je suis clair...?
 
Donc il faudrait que je puisse utiliser des variables de session au niveau du code de mon usercontrol sans me soucier de la page aspx puisqu'elle ne me sert que de support de test.
 
 :jap:


Message édité par Fredaxe le 14-06-2006 à 10:28:46
Reply

Marsh Posté le 14-06-2006 à 11:46:42    

Mouaip... Jamais utilisé les sessions, trop de failles de sécurités d'après mes supérieurs. On utilisait le ViewState.
 
Sinon, ça peut t'intéresser de savoir qu'il y a un bug avec les sessions et SharePoint :
http://support.microsoft.com/defau [...] r%3B837376

Reply

Marsh Posté le 14-06-2006 à 11:59:37    

_Mose_ a écrit :

Mouaip... Jamais utilisé les sessions, trop de failles de sécurités d'après mes supérieurs. On utilisait le ViewState.
 
Sinon, ça peut t'intéresser de savoir qu'il y a un bug avec les sessions et SharePoint :
http://support.microsoft.com/defau [...] r%3B837376


 
Je me penche là-dessus.
Merci beaucoup  :jap:  :jap:  :jap:  

Reply

Marsh Posté le 16-06-2006 à 08:46:49    

_Mose_> J'ai regardé et effectivement mon pb venait bien du fait que j'ai installé Sharepoint et VS.NET sur mon win server 2003 de ma machine de dév. J'ai donc modifié le web.config comme le préconise l'article de Microsoft que tu m'as donné et.... cela fonctionne parfaitement.  
 
Voici le détail de ce que j'ai ajouté dans le web.config si cela peut aider quelqu'un ayant le même pb:
 

Code :
  1. <!-- FC : DEBUT : Correctif bug Microsoft sur la prise en compte des variables de session ASP.NET et SPS -->
  2.     <httpHandlers>
  3.     <clear />
  4.     <add verb="*" path="*.aspx" type="System.Web.UI.PageHandlerFactory, System.Web, Version=1.0.5000.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
  5.     </httpHandlers>
  6.     <trust level="Full" originUrl="" />
  7.     <httpModules>
  8.     <add name="Session" type="System.Web.SessionState.SessionStateModule"/>
  9.     </httpModules>
  10.     <pages enableSessionState="true" enableViewState="true" enableViewStateMac="true" validateRequest="false" />
  11.     <!-- FC : FIN : Correctif bug Microsoft sur la prise en compte des variables de session ASP.NET et SPS -->


 
Mille merci MOSE !!!...  :jap:  :jap:  :jap:

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed