IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

plusieurs essais pour concaténer des valeurs dans NavigateUrl


Sujet :

ASP.NET

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Juillet 2009
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 51
    Par défaut plusieurs essais pour concaténer des valeurs dans NavigateUrl
    Ma foie,

    Pour que vous vous situiez dans le contexte: j'ai une page login.aspx.cs qui passe des valeurs à une page welcome.aspx (si l'utilisateur réussi à s'identifier biensure!). Dans la page welcome j'ai 3 liens qui peuvent être visible ou invisible selon les variables reçues. Jusque là tout va bien. Quand je clique sur le(s) lien(s) qui me sont visible(s), j'aimerais encore envoyer ces variables à la page où je vais, je fais donc:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    <script runat="server">
      protected void Page_Load(Object sender, EventArgs e)
      {
           groupe = Request.Params["groupe"].ToString();
           if (groupe=="GesAchatAdmin")
           {
            AdminLink.Visible = true;
            AcheteurLink.Visible = true;
            DemandeurLink.Visible = true;
           }
           else 
           {
               AdminLink.Visible = false;
               AcheteurLink.Visible = true;
               DemandeurLink.Visible = true;
           }
      }
    </script>
     <asp:HyperLink id="AdminLink" runat="server"
       Text="Gestion" NavigateUrl='<%#string.Concat("~/Admin.aspx?groupe=", Eval("groupe"))%>' "/>
    Mais ce que je recois dans la page welcome c'est un text "Gestion" au lieu d'un lien, je ne peux pas cliquer dessus.

    J'ai donc essayé:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    NavigateUrl='<%#string.Concat("~/Admin.aspx?groupe=", Request.Params["groupe"]%>'
     
    NavigateUrl= '<%#"GestionCommande.aspx?groupe=" + Request.Params["groupe"]%>' <!-- sans string.concat-->
     
    Ca donne la même chose. J'ai donc modifié le code:
     <asp:HyperLink id="AdminLink" 
       Text="Gestion"  onclick="Admin_Click" runat="server" />
    avec:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <script runat="server">
        protected void Admin_Click(Object Src, EventArgs E)
        {
            Page.Response.Redirect(String.Concat("Admin.aspx?groupe=", Request.Params["groupe"]);
        }
    </script>
    Ca change pas grande chose (ca change rien du tout). J'ai alors essayé dans <script runat="server">:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    protected void Page_Load(Object sender, EventArgs e)
      {
           groupe = Request.Params["groupe"].ToString();
           if (groupe=="GesAchatAdmin")
           {
            AdminLink.Visible = true;
            AcheteurLink.Visible = true;
            DemandeurLink.Visible = true;
            DemandeurLink.NavigateUrl = string.Concat("~/Admin.aspx?groupe=", Request.Params["groupe"].ToString());
           }
           //...
    Encore une fois j'ai pas réussi. Quelqu'un peut m'aider?

  2. #2
    Membre averti
    Inscrit en
    Juillet 2009
    Messages
    51
    Détails du profil
    Informations forums :
    Inscription : Juillet 2009
    Messages : 51
    Par défaut
    slt,

    Pour ceux qui ont eu le même pb que moi, ie. l'envoi des valeurs de la 1ère page à la 2è marche bien, puis de la 2è page à la 3è, en passant les valeurs par NavigateUrl crée un truc zarbi (il transforme le lien en un texte, impossible de cliquer), j'ai eu une autre idée qui marche: vous faites passer par une session (à partir de la 2è page). Je m'explique (pour ceux qui savent pas cmt utiliser une session):

    dans la 1ère page:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Response.Redirect("Welcome.aspx?groupe=" + groupe + "&user=" + Login1.UserName.ToString() + "&email=" + email, false);
    dans la 2è page, je récupère & met dans une session:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
      protected void Page_Load(Object sender, EventArgs e)
      {
           groupe = Request.Params["groupe"].ToString();
           user = Request.Params["user"].ToString();
           email = Request.Params["email"].ToString();
           Session["groupe"] = groupe;
           Session["user"] = user;
           Session["email"] = email;
      } 
     
    // avec groupe, user & email  déclarés comme variable public (de type string par ex) de la classe de la page qui appelle Page_Load
    Dans la 3è page, vous récupérez de Session & mettez dans une variable interne pour travailler :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    string myemail=Session["email"].ToString();
    Merci!

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [11gR2] Procédure générique pour insérer des valeurs dans une table
    Par bibi_obs dans le forum PL/SQL
    Réponses: 7
    Dernier message: 29/03/2013, 11h18
  2. VBS aide pour compter des valeurs dans des fichiers xml
    Par jorge91450 dans le forum VB.NET
    Réponses: 1
    Dernier message: 09/01/2013, 13h28
  3. fonction pour sélectionner des valeurs dans une matrice
    Par EaudeRoche dans le forum MATLAB
    Réponses: 4
    Dernier message: 09/03/2012, 11h45
  4. "Looper" pour mettre des valeurs dans un combobox
    Par Shoppingsyl dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 08/02/2010, 04h02
  5. Réponses: 6
    Dernier message: 28/12/2007, 22h34

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo