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 :

Problème d'URL relative


Sujet :

ASP.NET

  1. #1
    Membre expérimenté

    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    1 377
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 377
    Points : 1 628
    Points
    1 628
    Par défaut Problème d'URL relative
    Bonjour à tous,

    Y a un problème que j'ai du mal à cerner, en fait j'utilise les url relatives et si j'utilise un <a> avec/sans runat="server" le résultat change exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a id="lkHome" href="dealer/homepage">
    Marche très bien, j'ai bien la bonne url qui se construit qui est :

    http://localhost:port/MonSite/dealer/homepage

    Et puis si j'utilise (puisque je dois préciser l'url en code-behind) :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a id="lkHome" runat ="server" href="dealer/homepage">
    Ca ne marche plus, j'ai une url tronqué qui est :

    http://localhost:port/dealer/homepage

    Sauriez-vous par hasard d'où viens ce problème et comment le résoudre ?

    Merci d'avance.

    PS : J'ai mis les url's simplifiées puisque j'utilise l'url rewriting ...
    Échouer, c'est avoir la possibilité de recommencer de manière plus intelligente.

    Twitter Blog Mon site

    Mon article sur l'agilité

  2. #2
    Membre expert
    Avatar de Pongten
    Homme Profil pro
    IT Analyst & Software Developer
    Inscrit en
    Juin 2002
    Messages
    1 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : Belgique

    Informations professionnelles :
    Activité : IT Analyst & Software Developer
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Juin 2002
    Messages : 1 173
    Points : 3 543
    Points
    3 543
    Par défaut
    Intuitivement, je dirais que lorsque le contrôle est uniquement côté client, il créer son url à partir de l'emplacement où il est, mais que côté serveur, il se base sur la root du site.

    Si jamais, tu as les méthodes Page.ResolveUrl et Page.ResolveClientUrl qui peuvent t'aider..
    Si ton problème a une solution, rien ne sert de t'inquiéter..
    Si il n'en a pas, t'inquiéter ne sert à rien


  3. #3
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Points : 8 734
    Points
    8 734
    Par défaut
    Essaye ça pour voir

    <a id="lkHome" runat ="server" href="~/dealer/homepage">

  4. #4
    Membre expérimenté

    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    1 377
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 377
    Points : 1 628
    Points
    1 628
    Par défaut
    Merci à vous deux pour vos réponses.

    Mais tous ce que vous me proposez je l'ai essayé et ça a échoué

    Page.ResolveUrl => Me renvoie à priori l'URI avec le v-dir

    Page.ResolveClientUrl ne change rien à mon URL

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <a id="lkHome" runat ="server" href="~/dealer/homepage">
    =>
    Me renvoie la même URL que sans le ~
    Échouer, c'est avoir la possibilité de recommencer de manière plus intelligente.

    Twitter Blog Mon site

    Mon article sur l'agilité

  5. #5
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Points : 8 734
    Points
    8 734
    Par défaut
    Ok, tu veux vraiment utiliser un link classique?
    Car avec un asp:HyperLink, le ~ devrait fonctionner

  6. #6
    Membre expérimenté

    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    1 377
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 377
    Points : 1 628
    Points
    1 628
    Par défaut
    Non, j'y tiens absolument pas ...

    Mais ça ne change rien non plus voici ce que j'ai fais pour tester :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    <asp:HyperLink runat="server" ID="lkHome" NavigateUrl="~/dealer/homepage">
    Et j'ai toujours :
    http://localhost:port/dealer/homepage
    au lieu de
    http://localhost:port/MonSite/dealer/homepage
    Échouer, c'est avoir la possibilité de recommencer de manière plus intelligente.

    Twitter Blog Mon site

    Mon article sur l'agilité

  7. #7
    Rédacteur
    Avatar de lutecefalco
    Profil pro
    zadzdzddzdzd
    Inscrit en
    Juillet 2005
    Messages
    5 052
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : zadzdzddzdzd

    Informations forums :
    Inscription : Juillet 2005
    Messages : 5 052
    Points : 8 734
    Points
    8 734
    Par défaut
    Hmmm
    Ca pourrait pas être un problème de config du site au niveau de IIS?

  8. #8
    Membre expérimenté

    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    1 377
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 377
    Points : 1 628
    Points
    1 628
    Par défaut
    Alors en fait le problème que j'avais était sur cassini ...

    Je suis donc passer sur IIS et là surprise, j'ai encore plus de problème (toute mes url's relatives ont échoué ...), mais que j'ai résolu (avec un peu de bidouille ...).

    Par exemple quand je récupère une URL avec une expression <% %>, il concatène avec une partie de l'url précédente (normal puisque elle était subRub/Article) donc je force pour avoir ~/ et la surprise le résultat est :

    localhost:port/Site/MonAncienUrl~/subRub/Article

    J'ai essayé en mettant que le slash /, j'obtiens :

    localhost:port/subRub/Article (sans le Site cette fois).

    Et donc je bidouille pour avoir

    localhost:port/Site/subRub/Article

    J'avais aussi des problèmes avec mes javascript et autre css que j'ai résolu avec :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    "<%=ResolveUrl("~/css/style.css") %>"
    Et du coup tout marche, mais je ne suis pas très satisfait (être obliger de mettre /Site dans le web.config et concaténer ...) et surtout j'ai remarqué que j'avais du mal à appréhender ce genre de souci ...

    Alors si vous avez des remarques ou des meilleurs pratiques n'hésitez pas.
    Échouer, c'est avoir la possibilité de recommencer de manière plus intelligente.

    Twitter Blog Mon site

    Mon article sur l'agilité

  9. #9
    Membre expérimenté

    Profil pro
    Inscrit en
    Octobre 2005
    Messages
    1 377
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Octobre 2005
    Messages : 1 377
    Points : 1 628
    Points
    1 628
    Par défaut
    Un avis ?
    Ce que je fais actuellement décris dans le post précédent vous parez acceptable ?
    Échouer, c'est avoir la possibilité de recommencer de manière plus intelligente.

    Twitter Blog Mon site

    Mon article sur l'agilité

Discussions similaires

  1. Réponses: 10
    Dernier message: 08/12/2010, 20h34
  2. problème showDocument(URL) et cache IE
    Par mille_furies dans le forum Applets
    Réponses: 2
    Dernier message: 13/02/2009, 16h47
  3. [htaccess] Problème d'url rewriting
    Par scorpiwolf dans le forum Apache
    Réponses: 4
    Dernier message: 02/12/2005, 18h21
  4. [WebForms]Mettre l'URL relative vers un fichier
    Par Immobilis dans le forum Général Dotnet
    Réponses: 5
    Dernier message: 08/11/2005, 22h32
  5. Problème d'URL
    Par polux23 dans le forum Apache
    Réponses: 3
    Dernier message: 29/09/2005, 12h06

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