begin process at 2012 05 28 11:53:05
  Trouver un code source :
 
dans
 
Accueil > Forum > 

ASP.NET

 > 

WebForms

 > 

WebControl

 > 

récupération d'une variable issue d'une autre methode


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

récupération d'une variable issue d'une autre methode

dimanche 15 mars 2009 à 19:53:28 | récupération d'une variable issue d'une autre methode

coccolata

bonsoir,
comment je peux récuperer le contenu d'une variable utilisée dans une autre methode??
j'ai essayé  par exp bool ref maVariable=false; lors de la declaration
j'ai essayé de mettre la variable desiree comme valeur retournée et je la recupere avec maVariable=nomclasse.nomMethode();
mais ça ne marche pas
lundi 16 mars 2009 à 00:42:43 | Re : récupération d'une variable issue d'une autre methode

coccolata

voici un bout de code:
 protected void CalendarI_SelectionChanged(object sender, EventArgs e)
(.......................)
if (dateValide)
        {

            // test de la date : existe ou non dans la table de pointage

            while (i < ds.Tables[0].Rows.Count && !trouve)
            {
                if (Convert.ToDateTime(ds.Tables[0].Rows[i].ItemArray[0]).ToShortDateString() == CalendarI.SelectedDate.ToShortDateString())
                { trouve = true; } // la date selectionnée existe dans la table pointages
                i++;
            }
        }

        if (trouve)
        {
            ClientScript.RegisterStartupScript(typeof(Page), "alert", "<script language=JavaScript>alert('" + (dateExistante) + "');</script>");
        }

l'autre methode
protected void btnvaliderI_Click(object sender, EventArgs e)
(............)
if (!trouve)
        {  insertEffectue = db.Insert(" INSERT INTO deletePointages  VALUES(" + mat + "," + firstName + "," + lastName + "," + txtpointageI.Text + "," + txtmotifI.Text + defaut + CalendarI.SelectedDate.ToShortDateString() + ")"); }


la question est comment récuperer "trouve" dans la 2methode

lundi 16 mars 2009 à 09:16:48 | Re : récupération d'une variable issue d'une autre methode

RougailSaucisse

il faut que tu sauves ta variable d'une page a l'autre, car SelectionChanged et button_click provoque un postback et par conséquent tu perds l'état de tes variables.
Stockes donc ta variable "trouve" dans un ViewState par exemple.

private bool trouve = (ViewState["trouve"] != null) ? (bool)ViewState["trouve"] : false;

puis n'oublie pas de sauver dans le viewstate a chaque fois que ta variable 'trouve' change d'etat:
trouve = true;
ViewState["trouve"] =  trouve;


mercredi 18 mars 2009 à 21:47:29 | Re : récupération d'une variable issue d'une autre methode

coccolata

merci RougailSaucisse pour ta réponse, j'étais  vraiment bloquée...
mais en fait le blocage persiste encore
l'emploi du ViewSate m'a généré une erreur :
 Error 1 Une référence d'objet est requise pour la propriété, la méthode ou le champ non statique 'System.Web.UI.Control.ViewState.get' C:\Documents and Settings\user\Mes documents\Visual Studio 2005\WebSites\CorrectionPointage\Insertion.aspx.cs 17 28 C:\...\CorrectionPointage\

pourtant j'utlise

using

System.Web.UI;

using

System.Web.UI.WebControls;
 
quelle est la référence manquante?
peux tu m'expliquer d'avantage qu'est ce qu'un ViewState???

thaaaaaaaaaaaaaaaaaaaaaanks
jeudi 19 mars 2009 à 01:31:02 | Re : récupération d'une variable issue d'une autre methode

RougailSaucisse

hummm comment et ou emploi tu le viewstate qui te genère cette erreur?
La comme ca j'avoue que je ne vois pas bien. a premiere vue j'aurai pensé que tu utilisais cela dans une classe n'implementant pas System.Web.UI.Page mais l'erreur semble provenir d'un code behind d'une de tes pages donc ca devrait pas etre ca. La deuxieme chose à laquelle j'aurai pensé c'est que tu fais appel a ViewState dans une méthode static de ta page (et du fais qu'une methode static ne peut appeler une methode d'instance tu pourrais avoir cette erreur).

enfin peu importe, si tu pouvais indiquer la fonction/le contexte dans laquelle tu fais appel a ViewState et qui te renvoie cette erreur on verra bien.
sinon pour le viewstate je n'ai pas de lien précis, mais le net est inondé d'infos a ce sujet (fais un tour sur http://www.msdn.com, ou http://asp.net/learn) je suis sur qu'il y a aura des trucs a ce sujet.
jeudi 19 mars 2009 à 10:08:11 | Re : récupération d'une variable issue d'une autre methode

coccolata

bonjour,
j'ai fait un petit  tour sur le net apropos du ViewState, j'ai noté que l'emploi de ce controle est toujours lié a gridview..dropdownlist...qui n'est le cas pour moi
je pense qu'il est destiné de stocker des variables coté client d'un gridview dropdownlist...mais pas une variable quelconque en code behind...
je ferai d'autre tentatives...
jeudi 19 mars 2009 à 10:18:44 | Re : récupération d'une variable issue d'une autre methode

RougailSaucisse

bonjour,

si si tu peux stocker ce que tu veux dans un viewstate ;)

Dans les exemples que tu as du voir il est utilisé pour garder l'etat des variables, comportement par défaut, mais tu peux de la mm manière stocket n'importe quel type de variable dans le viewstate. Par exemple pour les tri sur certains controles de données, on peut stocker l'index courant (PageIndex) dans le viewstate et ce n'est pourtant bien qu'un int qu'on stocke.
donc de la mm manière si tu as besoin de stocker un autre type pour quelconque raison tu peux le faire. Le tout dans ton cas etait de verifier si tu n'appelait ton viewstate dans une methode static.
jeudi 19 mars 2009 à 10:24:24 | Re : récupération d'une variable issue d'une autre methode

coccolata

rebonjour j'ai essayé d'employer une methode pour gerer ce viewstate

publicbool trouve

{

get

{

bool text = ((bool)ViewState["trouve"]!=null)?(bool)ViewState["touve"]:false;

return text;

}

set

{

ViewState[

"trouve"] = value;

}

}


mais en vain!!!!

jeudi 19 mars 2009 à 10:30:24 | Re : récupération d'une variable issue d'une autre methode

coccolata

j'ai une suggestion je sais qu'elle est bête mais comme meme je vais la signaler
je peux utiliser des variables de session?? ça fonctionne seulement entre les pages??
apparamment oui
jeudi 19 mars 2009 à 10:48:41 | Re : récupération d'une variable issue d'une autre methode

RougailSaucisse

Réponse acceptée !
si tu as cela dans le code ta page cela devrait marcher (enfin faut corriger le touve en trouve et ton premier cast en bool est pas necessaire mm deconseillé.
Si ta structure de page ressemble a ceci ca devrait marcher:
public partial class _Default : System.Web.UI.Page
{
public bool trouve
{
    get
    {
        bool text = (ViewState["trouve"] != null) ? (bool)ViewState["trouve"] : false;
        return text;
    }
    set
    {
        ViewState["trouve"] = value;
    }
}

//pour le test
//j'ai un bouton qui realise un postback donc premiere fois il m'affiche faux, apres un postback il m'affiche vrai
protected void Page_Load(object sender, EventArgs e)
{
    if (trouve)
        Response.Write("vrai");
    else
    {
        Response.Write("faux");
        trouve = true;
    }
}
...
}

Corrige deja le touve en trouve bien que je pense que tu l'ai deja fait mais bon ^^

EDIT: je viens de voir ton autre post, et bien sur tu peux stocker dans la session mais cela n'est peut-etre pas necessaire. Il faut voir quelle est le "scope" dont tu as besoin. Ici si tu as juste besoin de passer une info d'un postback a l'autre le viewstate ira très bien. Si par contre tu souhaites garder une info toute au long de la session et que tu comptes la reutiliser a plus endroits/reprises alors la oui tu utiliseras l'objet Session.

Donc pour résumer:

La Session te permet de stocker des informations pour une durée determinée et pour un utilisateur donnée tant qu'il interagit avec l'application web.
Le Viewstate se contente de garder l'info d'un postback à l'autre

1 2

Cette discussion est classée dans : variable, methode, récupération, essayé, issue


Répondre à ce message

Sujets en rapport avec ce message

récupération de variable flash sous asp [ par g3rfo ] bonjourvoila j ai une question: je cherche a faire un auth depuis flashpour cela ill me faut récupéré mes variable que j envoi depuis flash. pour ce k récupération d'une variable session [ par pikachu34 ] Je définis une variable session sur une page 2 et je l'alimente avec le contenu d'un champ formulaire récupéré sur la page 1 afin d'alimenter un fichi Récupération variable de Session dans App_code (requete Ajax) [ par fabyrob ] Bonjour à tous, Je developpe une application en VS2005 c#.Afin de ne pas recharger la page entiere je fat une requete ajax pour mettre à jour mes ch Passage et récupération [ par phicot ] Bonjour, je souhaite passer une viariable 'bin' dans une meme page .aspx, après validation d'un formulaire, et de récupérer cette variable 'bin', mais problème récupération de variable formulaire [ par nemetos ] Bonjour,J'arrive parfaitement à récupérer les variables provenant d'un formulaire et à les enregistrer dans une base de donnée sauf quand la variable Variable dans une base [ par akimodo ] Je cherche une methode pour appeler une variable dans une page asp classique qui se trouve dans une base,aujourd hui je suis oblige d ecrire dans un f Problème de variable session [ par oeilynx ] Après avoir créé une variable session et exécuté la fonction session.abandon, en tapant l'url d'une page qui utilise cette variable session, cette var variable [ par yourspinner ] salut a tous g un prob avec les variables de session je c pas comment en crée plusieurs et puis kan l'utilisateur de mon site reviens a la page d'iden problème de variable [ par ilaila ] Bonjour,je suis occupée à créer un site de type portail en asp (avec l'aide d'Ultradev). Sur la page index du site il y a un accès privé avec une dema variable session windows [ par bubblepwal ] Bonjour,Quelqun saurait-il comment récupérer l'identifiant de connection au domaine windows ???(celui qu'on donne en se connectant à son PC ...)merci


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,234 sec (4)

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