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 :

Récupération de l'adresse de la page courante


Sujet :

ASP.NET

  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    526
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 526
    Par défaut Récupération de l'adresse de la page courante
    Bonjour,

    J'ai une page ASP.net qui appelle un contrôle utilisateur. Dans ce contrôle, j'utilise une fonction en code behind qui me fait une redirection vers une autre page.

    Je voudrais savoir comment je pourrais faire pour récupérer dans mon code behind l'url de la page ASP qui l'appelle.

    C'est à dire :
    Dans ma page ASP.net, j'ai un appel au contrôle utilisateur :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <uc1:Liste ID="Liste" runat="server" />
    Dans le contrôle utilisateur Liste, j'utilise une image qui gère l'évenement ChoixType_Click :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <asp:ImageButton ID="Icône1" runat="server" CssClass="bout" ImageUrl="/Images_Projet/Images/Types/IcôneType1.png" width="40" height="40" OnClick="ChoixType_Click"  />
    Ma fonction ChoixType_Click se définit par :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    protected void ChoixType_Click(object sender, ImageClickEventArgs e)
            {
                Response.Redirect("...");
            }
    Ce que je voudrais, c'est connaître l'url de la page ASP.net pour pouvoir faire une condition dans ma fonction du type

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    protected void ChoixType_Click(object sender, ImageClickEventArgs e)
            {  if (PageASP.net="Page1")
                Response.Redirect(Page1bis");
             else  if (PageASP.net="Page2")
                Response.Redirect(Page2bis");
             else  if (PageASP.net="Page3")
                Response.Redirect(Page3bis");
            }
    Si quelqu'un sait comment faire ?
    Merci.

  2. #2
    Membre très actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Février 2007
    Messages : 871
    Par défaut
    Salut,

    utilise request.Url dans ton uc:

    et voila.

  3. #3
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    526
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 526
    Par défaut
    Comment je dois l'appliquer car j'ai essayé ça mais ça fonctionne pas :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    protected void ChoixType_Click(object sender, ImageClickEventArgs e)
            {
                if (this.Page.Request.Url.Equals("GestionType.aspx"))
                 { Response.Redirect("Gestion.aspx"); }
                else if (this.Page.Request.Url.Equals("ConsultationType.aspx"))
                 { Response.Redirect("Consultation.aspx"); }
                else if (this.Page.Request.Url.Equals("DetectionType.aspx"))
                 { Response.Redirect("Detection.aspx"); }
     
            }
    Il faut bien comprendre que les trois pages GestionType, ConsultationType et DetectionType utilisent le même contrôle utilisateur qui utilise la procédure ChoixType_Click. Et c'est pour cela pour je dois connaître dans mon contrôle la page qui la appelé, pour pouvoir avoir une redirection spécifique à chacune de ces pages.

  4. #4
    Membre très actif
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2007
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Développeur .NET

    Informations forums :
    Inscription : Février 2007
    Messages : 871
    Par défaut
    As-tu regardé ce que te renvoie this.Page.Request.Url... le debugger est ton ami.

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    526
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 526
    Par défaut
    J'ai vu aussi que pour récupérer l'url de la page appelante, on pouvait utiliser

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Request.ServerVariables.ToString()
    Mais j'ai essayé de cette manière mais ça ne marche toujours pas :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    if (Request.ServerVariables.ToString().Equals("GestionType.aspx")) 
     
                 { Response.Redirect("Gestion.aspx"); }

  6. #6
    Membre très actif Avatar de Sacha999
    Inscrit en
    Mars 2007
    Messages
    294
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Mars 2007
    Messages : 294
    Par défaut
    http://www.xcess.info/request_url_pa...p_net_aen.aspx

    Ton code est "nul" dans le sens où si je tape dans mon navigateur "http://monsite.com/gESTIONtYPe.aspx", ton "Equal" sera faux alors que je suis bien sur la bonne page.

  7. #7
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    526
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 526
    Par défaut
    Ok mais ça ne repond pas à mon problème.

    J'ai utilisé ceci pour récupérer l'adresse de ma page appelante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    string str;
      str = Request.ServerVariables["HTTP_REFERER"];
      Response.Write(str);
    J'ai obtenu comme résultat pour str : http://localhost49512/GestionType.aspx

    Ce que je voudrais savoir, c'est quelle est la syntaxe exacte en C# que je dois utiliser dans ma condition SI pour avoir :

    Si (str = GestionType.aspx) alors Response.redirect("Gestion.aspx")
    sinon si (str =ConsultationType.aspx) alors Response.redirect("consultation.aspx") ?

    Merci.

  8. #8
    Membre très actif Avatar de Sacha999
    Inscrit en
    Mars 2007
    Messages
    294
    Détails du profil
    Informations personnelles :
    Âge : 45

    Informations forums :
    Inscription : Mars 2007
    Messages : 294
    Par défaut
    Essaie ca ptete

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    String str;
    str = Request.ServerVariables["HTTP_REFERER"];
    if (!String.IsNullOrEmpty(srt))
    {
      str = System.IO.Path.GetFileName(str).ToLower();
      if (str.Equals("gestiontype.aspx"))
        Response.redirect("Gestion.aspx");
      else if (str.Equals("consultationtype.aspx"))
        Response.redirect("consultation.aspx");
    }

  9. #9
    Membre éclairé
    Profil pro
    Inscrit en
    Avril 2008
    Messages
    526
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2008
    Messages : 526
    Par défaut
    Super, ça marche.

    A remarquer quand même que str est égal à gestiontype.aspx et non pas GestionType.aspx (perte des majuscules).

    Merci.

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

Discussions similaires

  1. Récupération dynamique de valeur durant la page courante
    Par ssoltani dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 19/01/2012, 16h51
  2. Nom de la page courante en jsp
    Par kitov dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 07/10/2011, 10h46
  3. [Débutant] problèmes Récupération URL sur page courante
    Par synolog dans le forum C#
    Réponses: 9
    Dernier message: 27/09/2011, 17h12
  4. Récupération du titre de la page courante
    Par President2 dans le forum Langage
    Réponses: 4
    Dernier message: 10/06/2009, 09h47
  5. Pb de récupération d'adresse d'une page asp
    Par croco83 dans le forum ASP
    Réponses: 2
    Dernier message: 07/05/2004, 10h26

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