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 :

[4.0] Problème avec l'Url Routing


Sujet :

ASP.NET

  1. #1
    Membre régulier Avatar de Nadd
    Profil pro
    Étudiant
    Inscrit en
    Septembre 2005
    Messages
    160
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2005
    Messages : 160
    Points : 95
    Points
    95
    Par défaut [4.0] Problème avec l'Url Routing
    Bonjour,

    Je suis actuellement en train de m'essayer à l'Url Routing avec ASP.NET et le Framework 4.0 (tout ça sous Visual Studio 2010). J'ai suivi le tutorial de Mike Ormond, disponible ici.

    Lorsque je procède à un debugging, sous le serveur web de développement intégré à Visual Studio, de l'application .NET, l'Url Routing fonctionne sans problème. C'est avec IIS 7.0 que ça pose problème.

    Mon application web est bien exécutée avec le mode intégré et le Framework .NET 4.0. D'ailleurs, mon application web MVC (version 1.1) fonctionne sans problème sous les mêmes paramètres.

    Voici le code du Global.asax :

    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
     
    namespace dev
    {
        public class Global : System.Web.HttpApplication
        {
     
            protected void Application_Start(object sender, EventArgs e)
            {
                RegisterRoutes(RouteTable.Routes);
            }
     
            private void RegisterRoutes(RouteCollection routes)
            {
                Route r = new Route("{Parameter}", new Framework.MEOSimpleRouteHandler());
                routes.Add(r);
            }
        }
    }
    Et le code de la classe MEOSimpleRouteHandler :

    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
     
    namespace dev.Framework
    {
        public class MEOSimpleRouteHandler : IRouteHandler
        {
            public IHttpHandler GetHttpHandler(RequestContext requestContext)
            {
                string pageName = requestContext.RouteData.GetRequiredString("Parameter");
     
                pageName = pageName.ToLower() == "home" ? "Index" : pageName;
                string virtualPath = string.Format("~/Views/Home/{0}.aspx", pageName);
     
                return (Page)BuildManager.CreateInstanceFromVirtualPath(virtualPath, typeof(Page));
            }
        }
    }
    En vous remerciant d'avance,

    Nicolas.

  2. #2
    Membre régulier Avatar de Nadd
    Profil pro
    Étudiant
    Inscrit en
    Septembre 2005
    Messages
    160
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2005
    Messages : 160
    Points : 95
    Points
    95
    Par défaut
    J'ai oublié de préciser que j'avais bien effectué la modification dans le fichier Web.config :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
          <httpModules>
            <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
            <add name="RoutingModule" type="System.Web.Routing.UrlRoutingModule" />
          </httpModules>

  3. #3
    Membre régulier Avatar de Nadd
    Profil pro
    Étudiant
    Inscrit en
    Septembre 2005
    Messages
    160
    Détails du profil
    Informations personnelles :
    Âge : 34
    Localisation : Belgique

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Septembre 2005
    Messages : 160
    Points : 95
    Points
    95
    Par défaut
    Bonsoir,

    J'ai finalement repéré l'erreur. L'article de Mike Ormond disait ceci :

    There's one last thing we need to do to get this site working - we need to add the UrlRoutingModule into the httpModules section in web.config (in the system.web section).
    J'avais en effet ajouté la ligne suivante :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <add name="RoutingModule" type="System.Web.Routing.UrlRoutingModule" />
    dans la section system.web. Cela ne fonctionnait pas.

    Après l'avoir déplacée dans la section system.webServer, située plus bas dans le fichier, le problème fut résolu. Etrange ? :\

    Bonne soirée,

    Nicolas.

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

Discussions similaires

  1. Problèmes avec les URL FTP
    Par ngatchou dans le forum Général Java
    Réponses: 5
    Dernier message: 13/06/2012, 15h23
  2. Problème avec un url.openStream
    Par danieloo dans le forum Développement Web en Java
    Réponses: 13
    Dernier message: 20/10/2011, 11h37
  3. Problème avec RequestBuilder: URL absolue
    Par schwarzy2 dans le forum GWT et Vaadin
    Réponses: 2
    Dernier message: 06/09/2011, 13h24
  4. [1.x] Problème avec menu et routing
    Par laurent_m dans le forum Symfony
    Réponses: 6
    Dernier message: 18/11/2009, 13h10
  5. Problème avec l'url rewriting
    Par sami_c dans le forum Apache
    Réponses: 6
    Dernier message: 02/09/2008, 09h22

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