127 votes

Comment définir la page de démarrage pour le débogage dans une application ASP.NET MVC ?

Comment commencer à déboguer l'application à la racine de l'application ? Par exemple : http://localhost:49742/

J'obtiens toujours une page qui n'existe pas, telle que : http://localhost:49742/Views/Home/About.aspx

Notez qu'il serait bon de commencer à http://localhost:49742/Views/Home/About

212voto

Mark Seemann Points 102767

Allez dans les propriétés de votre projet et définissez la propriété de la page de démarrage.

  1. Allez sur le site du projet Propriétés
  2. Allez à la Web onglet
  3. Sélectionnez le Page spécifique bouton radio
  4. Tapez l'adresse URL souhaitée dans le champ Page spécifique fenêtre de texte

22voto

1c1cle Points 209

Bien que vous puissiez avoir une page par défaut dans le projet MVC, l'implémentation plus conventionnelle d'une vue par défaut serait d'utiliser un contrôleur par défaut, implémenté dans le fichier global.asax, par le biais de la méthode 'RegisterRoutes(...)'. Par exemple, si vous voulez que votre Public \Home pour être votre route/vue par défaut, le code serait :

    public static void RegisterRoutes(RouteCollection routes)
    {
        routes.IgnoreRoute("{resource}.axd/{*pathInfo}");

        routes.MapRoute(
            "Default", // Route name
            "{controller}/{action}/{id}", // URL with parameters
            new { controller = "Public", action = "Home", id = UrlParameter.Optional } // Parameter defaults
        );

    }

Pour que cela soit fonctionnel, vous devez avoir une page de démarrage définie dans le projet.

7voto

cihata87 Points 515

La sélection d'une page spécifique dans les propriétés du projet ne résout pas mon problème.

Dans MVC 4, ouvrez App_Start/RouteConfig.cs.

Par exemple, si vous voulez changer la page de démarrage en Connexion :

routes.MapRoute(
        "Default", // Route name
        "",        // URL with parameters
        new { controller = "Account", action = "Login"}  // Parameter defaults
    );

1voto

RichardOD Points 19942

Si vous voulez démarrer à la "racine de l'application" comme vous le décrivez, faites un clic droit sur la page de haut niveau Default.aspx et choisissez "set as start page". Appuyez sur F5 et vous avez terminé.

Si vous souhaitez commencer par une autre action de contrôle, consultez la réponse de Mark.

0voto

Syd Points 1117

Je revisite cette page et j'ai plus d'informations à partager avec les autres.

Environnement de débogage (avec Visual Studio)

1a) Le lien de Stephen Walter pour définir la page de démarrage sur MVC en utilisant les propriétés du projet est uniquement applicable lorsque vous déboguez votre application MVC.

1b) Cliquez avec le bouton droit de la souris sur la page .aspx dans l'explorateur de solutions et sélectionnez l'option "Set As Start Page" (définir comme page de démarrage).

Remarque : dans les deux cas ci-dessus, le paramètre de la page de démarrage n'est reconnu que par votre serveur de développement Visual Studio. Il n'est pas reconnu par votre serveur déployé.

Environnement déployé

2a) Pour définir la page de démarrage, en supposant que vous n'avez pas modifié les routages par défaut, modifiez le contenu de /Views/Home/Index.aspx pour effectuer un "Server.Transfer" ou un "Response.Redirect" vers la page souhaitée.

2b) Changez votre routage par défaut dans votre global.asax.cs vers la page souhaitée.

Y a-t-il d'autres options dont les lecteurs ont connaissance ? Laquelle des options ci-dessus (y compris la vôtre) serait votre solution préférée (et pourquoi) ?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X