Session dans un WebService

Session dans un WebService - C#/.NET managed - Programmation

Marsh Posté le 18-12-2005 à 10:36:41    

Voila mon problème, impossible de conserver les sessions dans mon webService.  
 
En fait, j'ai tester le sessionstate "SQLServer" (dans le fichier Web.config). Et à mon plus grand étonnement, le sessionid change à chaque fois. Bizzare bizzare. Est-ce un problème au niveau de mon code, ou au niveau d'une configuration.
 
client dans global.asax dans la méthode session_start

Code :
  1. Session["CONTAINER"] = new ws_match.service();


 
client appel des méthodes du WebService

Code :
  1. ((wm_match.service)Session["CONTAINER"]).login(mylogin, mypass));


 
coté webservice dans la méthode login (par exemple) qui est bien EnableSession = true

Code :
  1. if ((Session["STATUS"] = db.login(this.log, this.pass) == STATUS.NOT_LOGGED_IN)
  2. throw new SoapException (...);


 
et quand je repasse par une méthode ayant besoin de cette session qui est également EnableSession = true
je suis tjs dans le status NO_LOGGED_IN.  

Code :
  1. if (Session["STATUS"] == STATUS.NOT_LOGGED_IN)
  2. throws new SoapException (...);
  3. return db.getPalmares();


 
voila les grandes lignes, ou la variable STATUS est une énumération. Ou db est un objet faisant les connexions vers la base de données.  
 
Ai-je oublié quelque chose?  
 
Savez vous ou ça cloche?
 
=> Visual Studio 2005 BETA 2
=> IIS 5.0
=> SQL SERVER 2005
 
Et tout ça sous Windows XP PRO SP2
 
HELP je sais plus quoi faire :s


Message édité par moi23372 le 18-12-2005 à 10:38:23
Reply

Marsh Posté le 18-12-2005 à 10:36:41   

Reply

Marsh Posté le 20-12-2005 à 18:40:10    

bon finalement j'ai trouvé la solution...
 
Je suis obligé de passer par un CookieContainer coté client. Donc si ça arrive à vous un jour, ne l'oubliez pas ;-)

Reply

Sujets relatifs:

Leave a Replay

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