2010-05-26 6 views
1

Je travaille sur un site web dans lequel de nombreux utilisateurs peuvent créer leur compte et avoir une page personnalisée. Je souhaite leur fournir un twitter comme url pour accéder à leurs pages, par exemple www.mysite.com/smith ou www.mysite.com/john. J'utilise asp.net mvc 1.0. Je comprends que je peux ajouter des routes vers le fichier global.asax, mais je ne suis pas capable de comprendre comment ajouter une route qui fonctionnera pour de telles URL.Comment utiliser les URL personnalisées dans l'application asp.net mvc

Veuillez fournir de l'aide/des suggestions. Merci.

Répondre

2

Eh bien, vous pouvez toujours ajouter cela comme une dernière route:

routes.MapRoute(
    "Default", 
    "{profile}", 
    new { controller = "Profile", action = "Index" } 
); 

mais cela rendra votre application plus lourde. Plus précisément, vous devrez vérifier les noms d'utilisateur afin qu'ils ne se heurtent pas au reste de vos itinéraires (comme /info, '/ admin' etc.).

Ce que je recommande est de déplacer la page de personnalisation d'un niveau plus profond:

routes.MapRoute(
    "Default", 
    "profile/{username}", 
    new { controller = "Profile", action = "Index" } 
); 
+0

Merci, ça a marché! –

0

Pour ma part, je voudrais utiliser ce qui suit, après toutes les autres routes, mais BEFARe un passe-partout:

routes.MapRoute( 
    "PrettyProfile", 
    "{username}", 
    new { controller = "Profile", action = "Index" } 
); 

Comme le dit Anton, vous devez contraindre vos userIDs à ​​ne pas entrer en conflit avec vos autres routes.

Questions connexes