2010-06-09 7 views
2

Dans un projet tout nouveau ASP.NET MVC2, je veux que l'utilisateur sera redirigé versComment forcer asp.net MVC 2 pour rediriger par défaut contrôleur/action

http://<mysite>/home/index 

plutôt que

http://<mysite>/ 

Nous le faisons avec nos autres sites à des fins de suivi, afin d'éviter le scénario où frappe à la même page par défaut apparaissent comme

http://<mysite>/ 
http://<mysite>/default.aspx 

Comment puis-je accomplir ceci afin que http://<mysite>/ redirige automatiquement vers n'importe quel contrôleur/action par défaut que j'ai mis en place dans mon routage? Veuillez noter que je suis conscient que les deux sont fonctionnellement équivalents, car l'action du contrôleur par défaut sera exécutée de toute façon. Je suis juste intéressé à forcer des URL cohérentes dans le navigateur.

Répondre

2

Quelque chose comme ça devrait le faire, non?

public class HomeController : Controller 
{ 
    public ActionResult Index() 
    { 
     string incomingUrl = HttpContext.Request.Url.LocalPath; 

     if (incomingUrl == "/") 
     { 
      return Redirect("/home/index"); 
     } 
     else 
     { 
      return View(); 
     } 
    } 
}