begin process at 2012 05 28 10:04:34
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Archive ASP & ASP.NET

 > 

Archives ASP & ASP.NET

 > 

AU SECOURS !!!!

 > 

Session et classe


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Session et classe

vendredi 25 mars 2005 à 12:35:56 | Session et classe

dadamagouil

Comment faire pour tester si un session est créé en sachant que celle-ci si elle est créé contient une class.

Si la session n'est pas créé mon test marche
Session.Contents("MonPanier") = ""

par contre si la session est créé et que je retest ca me met ça comme erreur.


Dans ma session je met ça si elle est pas créé :

Session.Contents("MonPanier") = Panier()

Panier() c'est ma class


Operator is not valid for type 'Panier' and string ""

Merci de me répondre ++

On a rien sans rienf

vendredi 25 mars 2005 à 16:55:25 | Re : Session et classe

Nurgle

Membre Club Administrateur CodeS-SourceS
Salut

Ton 'Panier' te renvoie quoi comme type de données ? Une variable ?
Parce que là on dirait qu'il renvoie un événement...

En gros, dans ta classe, 'Panier' c'est quoi, une Property, un Sub...?



Nurgle
C'est une grande folie que de vouloir être sage tout seul !
vendredi 25 mars 2005 à 17:28:17 | Re : Session et classe

dadamagouil

Ben il a une méthode ki me renvoi des articles mes à la base le panier renvoi rien du tout.

On a rien sans rien
vendredi 25 mars 2005 à 17:28:57 | Re : Session et classe

dadamagouil

    Class Panier
        Private _iIDUser As Integer
        Private _iArticle() As Integer
        Private _iNBArticle() As Integer
        Private _iPosition As Integer
   
        ' Constructeurs
        Public Sub New()
            _iIDUser = 0
            _iPosition = 0
            reDim _iArticle(100)
            reDim _iNBArticle(100)
        End Sub
   
        ' Propriétés
        Public Property User As Integer
            Get
                Return _iIDUser
            End Get
            Set (ByVal Value As Integer)
                _iIDUser = value
            End Set
        End Property
   
        Public Property Article(ByVal Position As Integer) As Integer
            Get
                Return _iArticle(Position)
            End Get
            Set (ByVal Value As Integer)
                _iArticle(Position) = value
            End Set
        End Property
       
        Public Property NBArticle(ByVal Position As Integer) As Integer
            Get
                Return _iNBArticle(Position)
            End Get
            Set (ByVal Value As Integer)
                _iNBArticle(Position) = value
            End Set
        End Property
       
        Public Property Position As Integer
            Get
                Return _iPosition
            End Get
            Set (ByVal Value As Integer)
                _iPosition = value
            End Set
        End Property
   
        ' Méthodes
        Public Function fnAjout(ByVal Article As Integer, NBArticle As Integer)
            _iArticle(_iPosition) = Article
            _iNBArticle(_iPosition) = NBArticle
            _iPosition = _iPosition + 1
        End Function
End Class

voilé ma class

On a rien sans rien
vendredi 25 mars 2005 à 18:22:47 | Re : Session et classe

Nurgle

Membre Club Administrateur CodeS-SourceS
Dans ce cas c'est une méthode,  et tu ne peux pas stoquer une méthode dans une variable de Session ! Tu peux y stocker uniquement une variable (comme son nom l'indique...)!

Mais je comprends pas ce que tu fait avec les Sessions : le principe d'une classe étant d'éviter d'avoir des fonctions et des variables de sessions...

Si j'ai bien compris tu veux tester si la classe a été lancée ou si elle ne l'a pas été ?



Nurgle
C'est une grande folie que de vouloir être sage tout seul !
samedi 26 mars 2005 à 00:35:15 | Re : Session et classe

Yopyop

Salut,

Tu ne peux pas mettre une classe dans une session, mais uniquement un objet (une instance de ta classe):

Dim monPanier as Panier
monPanier = New Panier()

Session.Contents("MonPanier") = monPanier


Apparemment (je me trompe ?) c'est de l'ASP et pas de l'ASP.NET
...
en asp tu ne peux pas mettre d'objet en session.

yopyop
samedi 26 mars 2005 à 19:54:14 | Re : Session et classe

dadamagouil

Oui c possible mais je ne veut pas instancier ma class à chaque chargement de la page c pour cette raison que je test si ma session contien déjà quelque chose.

On a rien sans rien
samedi 26 mars 2005 à 20:09:52 | Re : Session et classe

Nurgle

Membre Club Administrateur CodeS-SourceS
Tu es obligé de l'instancier à chaque chargement de la page...

Ou tu peux peut être le faire dans le global.asa ?
(ça marche bien pour des objets comme les bases de données, alors pourquoi pas pour une classe dans ce genre là...)
Tu pourrais l'instancier dans le Application_OnStart comme ça ta classe 'Panier' est accessible depuis toutes tes pages (enfin, je crois...).



Nurgle
C'est une grande folie que de vouloir être sage tout seul !
dimanche 27 mars 2005 à 03:51:31 | Re : Session et classe

Yopyop

Ok,

Au risque de me répéter un peu, en ASP 3.0 tu ne peux pas mettre une classe en session...(en fait dans uncun language que je connaisse)... tu ne peux pas non plus y charge une instance d'une classe...

En effet, les classes que tu crées ASP ne sont pas des "vrais" objets (pas comme une connection ou un recordset, ...)..
Lorsque tu mets ta connection en mémoire, tu ne mets pas un objet vbs (ASP) mais un objet issu d'une dll (Server.CreateObject(".....")).

Ce que tu peux faire, c'est ajouter une méthode à ton objet qui se sauve et se retrouve dans la variable session. Pour cela tu dois transformer toutes tes données en string.

Public Function SaveToSession()
Dim strValues
  strValue = Cstr(_IDUser) & "#" & Join(_iArticle,"**") & "#" Join(_iNBArticle,"**") & "#" & CStr(_iPosition)
  Session("monPanier") = strValues
End Function

Public Function LoadFromSession()
Dim strValues()
If Trim("" & Session("monPanier"))<>"" Then
  strValues = Split(Session("Panier"),"#")
  _IDUser = strValues(0)
  _iArticles = Split(strValues(1),"**")
  _iNBArticle = Split(strValues(2),"**")
  _iPosition = strValues(3)
End If
End Fucnction

Ou alors tu crées une dll pour ton objet et là tu pourras le mettre directement dans la variable session (tout comme une connection, un recordset, ...)

PS:
je suis pas sûr à 100% du code mais il devrait fonctionner.

yopyop
dimanche 27 mars 2005 à 03:52:10 | Re : Session et classe

Yopyop


strValue = Cstr(_IDUser) & "#" & Join(_iArticle,"**") & "#" Join(_iNBArticle,"**") & "#" & CStr(_iPosition)

strValues = Cstr(_IDUser) & "#" & Join(_iArticle,"**") & "#" Join(_iNBArticle,"**") & "#" & CStr(_iPosition)

mfff

yopyop

1 2

Cette discussion est classée dans : class, session, classe, créé, panier


Répondre à ce message

Sujets en rapport avec ce message

panier [ par balaasp ] balaBonjour,> > j aimerai svp savoir comment ecrire le code pour ajouter un produit au panier> en fait mon code est le suivant qui ne fonctionne pas c Probleme variables de session [ par yoyo2 ] Bonjour, Je vous soumets un bug bizarre, je ne sais pas si vous l'avez deja eu. J'héberge un site boutique sur un serveur Windows Server 2003 avec II Utilisation d'un objet tout au long d'une session. [ par romtrico064649 ] Bonjour, J'ai un problème qui devrais être assez facille à résoudre pour un pro de l'ASP:Voila :Je cré en ASP une classe.  OK            Class Ma_ class et structure de class... [ par mael974 ] bonjour je developpe une appli asp.net, je nest pas separer la parti code et graphique !! cpt je dois repeter une mm operation ds tous les page_load Héritage [ par gldfdp ] Bonjour,mon problème est le suivant : j'ai une classe A et une classe B qui hérite de A. Comment convertir simplement une instance de A en B. En effet Probleme partage d'une classe entre plusieurs sessions [ par epithug ] Bonjour,Je suis en train de developper une application (Web Service sur IIS) qui permet de manipiler l'Active Directory sur windows 2000 server.Dans c Problème avec Global.asa [ par Darktruff ] Bonjour à tous,Je travail depuis quelques jours sur un site d'e-commerce. Je fonctionne ainsi, quand un visiteur ajoute un article à son panier, les i Session variable [ par edokt ] Bonjour Une question peut etre un peut bizarEst ce qu'on peut acceder à la variable de session dans le projet asp.net, a partir d'un class .J'ai creer Panier avec variables de session [ par ibrahim26 ] Bonjour,J'ai crée un panier en utilisant la session (tableau de valeurs) dans le code behind de c#.J'ai donc un bouton sur ma form qui fait ceci :tabP $_SESSION['variable'] INSERT INTO $variable chez ONLINE.net ????? [ par anonymeboy1979 ] Bonjour, Je viens de créer un site internet (chez ONLINE.net) avec un formulaire d'inscription simple passant par plusieurs page donc j'utilise


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,530 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales