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

C# Discussion :

HttpUtility.UrlPathEncode() ne transforme pas les espaces


Sujet :

C#

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2011
    Messages
    487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2011
    Messages : 487
    Par défaut HttpUtility.UrlPathEncode() ne transforme pas les espaces
    Bonjour,

    Je travaille sur un projet ASP.NET, qui n'est pas du tout ma techno de prédilection, loin de là et je bloque sur un problème qui me laisse perplexe. Je poste ici car c'est vraiment un problème de framework et non d'ASP.

    En gros, j'ai un chaine du type :

    /Gallery.aspx?package=68&model=154&bookname=Book Web
    que j'utilise ensuite pour me rediriger. Comme vous pouvez le voir, "Book Web" est une variable de type string contenue dans ma db que je dois passer à une autre page. Malheureusement, le lien tel quel ne peut pas marcher, il faudrait que je remplace l'espace par %20 pour que ce soit interprété par le navigateur.

    J'ai donc cherché une méthode du framework qui fasse ça afin de ne pas réinventer la roue (et de ne pas oublier de cas de figure qui pourraient induire des bugs aussi) et j'ai trouvé HttpUtility.UrlPathEncode(). Génial, exactement ce qu'il me fallait ! Je vais sur msdn voir ce que ça fait et hop :

    http://msdn.microsoft.com/fr-fr/libr...athencode.aspx

    La méthode UrlPathEncode() convertit chaque espace en chaîne "%20", qui représentent un espace en notation hexadécimale.
    Super, top moumoute, toussa, je lance l'appli, je débug, aucun changement sur ma chaine ! QUOI ?!?


    Avez vous déjà utilisé cette méthode ? En connaissez vous une plus adapté ?

    Merci d'avance !
    Mon blog sur les technos .NET et Agile -> http://blog.developpez.com/maximepalmisano/

  2. #2
    Membre émérite

    Homme Profil pro
    Développeur .NET
    Inscrit en
    Juin 2011
    Messages
    487
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Seine et Marne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : Finance

    Informations forums :
    Inscription : Juin 2011
    Messages : 487
    Par défaut
    Bon, la méthode ne marche toujours pas, je ne sais toujours pas pourquoi mais j'ai trouvé un workaround qui passe bien :

    string url = Uri.EscapeUriString(path);
    Mon blog sur les technos .NET et Agile -> http://blog.developpez.com/maximepalmisano/

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

Discussions similaires

  1. Strtok n'aime pas les espaces
    Par dogua dans le forum Linux
    Réponses: 2
    Dernier message: 24/02/2009, 17h57
  2. Les filtre ADO n'aime pas les espaces
    Par antoinelac dans le forum C++Builder
    Réponses: 4
    Dernier message: 22/01/2009, 15h15
  3. [MySQL] Champs photo qui ne prends pas les espaces
    Par bullrot dans le forum PHP & Base de données
    Réponses: 9
    Dernier message: 21/10/2008, 15h19
  4. Trim ne me supprime pas les espaces
    Par tAKAmAkA dans le forum VBA Access
    Réponses: 2
    Dernier message: 06/10/2007, 14h31
  5. Le '%' en SQL ne remplace pas les espaces...
    Par njac dans le forum Langage SQL
    Réponses: 2
    Dernier message: 09/09/2004, 17h10

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