Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Passage de variable globale entre proc (code behind)

4 réponses
Avatar
LP
Bonjour,
Je déclare une variable globale dans mon code behind.
Cette variable est initialisée dans mon Page_Load (if Not Page.IsPostBack
Then initialisation de ma variable)
Je souhaite récupérer la valeur de cette variable dans une procédure (lors
de la validation de cette page).
Pb la variable contient 0.
Comment faire pour déclarer une variable globale ou passer une variable
entre procédure (en restant ds le même code behind).
Merci d'avance.

4 réponses

Avatar
Philippe Pons
Salut,

Utilise une variable de session.
Cette variable est maintenue pendnat la durée d'une session.

Création:
Session("maVariableChaine") = "Hello"
Session("maVariableInt") = 3
Session("maVaribaleDataSet") = dsUnDataSet

Récupération
Dim maChaine as string = Ctype(Session("maVariableChaine"), string)
Dim monInteger as Int32 = Ctype(Session("maVariableInt")int32)
Dim monDs as DataSEt = Ctype(Session("maVaribaleDataSet"), DataSet)

Philippe

"LP" a écrit dans le message de
news:
Bonjour,
Je déclare une variable globale dans mon code behind.
Cette variable est initialisée dans mon Page_Load (if Not Page.IsPostBack
Then initialisation de ma variable)
Je souhaite récupérer la valeur de cette variable dans une procédure (lors
de la validation de cette page).
Pb la variable contient 0.
Comment faire pour déclarer une variable globale ou passer une variable
entre procédure (en restant ds le même code behind).
Merci d'avance.


Avatar
Cactus Corp.
> Bonjour,
Je déclare une variable globale dans mon code behind.
Cette variable est initialisée dans mon Page_Load (if Not Page.IsPostBack
Then initialisation de ma variable)
Je souhaite récupérer la valeur de cette variable dans une procédure (lors
de la validation de cette page).
Pb la variable contient 0.
Comment faire pour déclarer une variable globale ou passer une variable
entre procédure (en restant ds le même code behind).
Merci d'avance.



Bonjour,

Y a t'il eu un clic utilisateur entre votre initialisation de variable
et la validation ? Si oui... la réponse sera plus longue! ; )

antoine, cc
Avatar
LP
Bonjour,
Oui, en effet l'utilisateur doit valider le formulaire (execution d'un
procédure stockée enregitrant les modifications effectuées).

Ex : dans le form 1 je sélectionne un agent pr le modifier sur validation je
vais ds un form2. Dans le form2 je récupére l'ID de l'agent sélectionner
(grace à un control serveur), ds ce fomr2 il y a un btn Valider qui permet
d'enregistrer les modifications effectuées sur la fiche (il me faut à ce
moment récupérer l'ID).
Merci d'avance LP

"Cactus Corp." a écrit :

> Bonjour,
> Je déclare une variable globale dans mon code behind.
> Cette variable est initialisée dans mon Page_Load (if Not Page.IsPostBack
> Then initialisation de ma variable)
> Je souhaite récupérer la valeur de cette variable dans une procédure (lors
> de la validation de cette page).
> Pb la variable contient 0.
> Comment faire pour déclarer une variable globale ou passer une variable
> entre procédure (en restant ds le même code behind).
> Merci d'avance.

Bonjour,

Y a t'il eu un clic utilisateur entre votre initialisation de variable
et la validation ? Si oui... la réponse sera plus longue! ; )

antoine, cc





Avatar
Cactus Corp.
Si je résume bien votre flux:

1- appel de page: Page_Load -> initialisation d'une variable globale
2- affichage d'un formulaire
3- destruction de l'instance de la page
4- l'utilisateur soumet le formulaire au serveur
5- appel de Page_Load -> Page.IsPostBack est à True, donc pas d'initialisation de la variable globale
6- affichage du résultat du traitement de formulaire
7- destruction de l'instance de la page

Soit j'ai manqué une étape, soit vous ne récupérez pas cette variable
globale entre l'étape 3 et 5.

Lorsqu'il s'agit de conserver des données entre plusieur affichages d'une
seule et unique page, l'utilisation du conteneur 'ViewState' peut être votre
solution ; )

antoine, cc