Wie legen Sie die Startseite für das Debuggen in einer ASP.NET MVC-Anwendung fest?

Antworten:

217

Gehen Sie zu den Eigenschaften Ihres Projekts und legen Sie die Startseiteneigenschaft fest.

  1. Gehen Sie zu den Eigenschaften des Projekts
  2. Gehen Sie zur Registerkarte Web
  3. Wählen Sie die spezifische Seite Optionsfeld
  4. Geben Sie die gewünschte URL in das Textfeld Bestimmte Seite ein
Mark Seemann
quelle
1
@ Mark- hier ist ein guter Link, der den Prozess detaillierter beschreibt- stephenwalther.com/blog/archive/2008/07/10/… . Ich würde das in deine Antwort aufnehmen.
RichardOD
22
+1
Geben Sie es unbedingt
10
Wenn Sie nur die Standard-MVC-Projektvorlage in VS.NET 2010 testen und damit arbeiten, löschen Sie einfach einen beliebigen Wert für die Startseite und debuggen Sie dann Ihr Projekt. Hiermit gelangen Sie zum Hauptmenü "Willkommen bei ASP.NET MVC!" Seite.
Atconway
3
Zusätzlich zu den oben genannten Schritten müssen Sie sicherstellen, dass Sie das Startprojekt PROJECT richtig ausgewählt haben (es reicht nicht aus, die Standardseite einzurichten, wenn Sie mehrere Projekte haben). Klicken Sie im Projektmappen-Explorer mit der rechten Maustaste auf das Projekt und legen Sie es als Startprojekt fest. Der Projektname wird dann im Lösungsbaum fett gedruckt.
Jazimov
3
@ Markieren Sie in Schritt 4 das Textfeld leer und stellen Sie sicher, dass das Optionsfeld Spezifische Seite ausgewählt ist. Das Debuggen wird im Anwendungsstamm gestartet.
Amraby
22

Während Sie im MVC-Projekt eine Standardseite haben können, besteht die konventionellere Implementierung für eine Standardansicht darin, einen Standardcontroller zu verwenden, der in der Datei global.asax über die Methode 'RegisterRoutes (...)' implementiert ist. Wenn Sie beispielsweise möchten, dass Ihr Public \ Home-Controller Ihre Standardroute / -ansicht ist, lautet der Code:

    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
        );

    }

Damit dies funktioniert, müssen Sie eine festgelegte Startseite im Projekt haben.

1c1cle
quelle
Wow ... Dies funktioniert sogar nach der Veröffentlichung auf einem Server (was für akzeptierte Antworten zumindest für mich nicht der Fall ist), also ist dies die wirklich gute Antwort
Antoine Pelletier
10

Dies funktioniert für mich unter Spezifische Seite für MVC:

/Home/Index

Update: Derzeit verwende ich nur einen Schrägstrich im Textfeld "Bestimmte Seite" und komme zur Startseite, wie im Routing definiert:

/
Greg Gum
quelle
Schöne einfache Antwort. Aber Vorsicht - wenn Sie etwas Ähnliches wie die Start-URL eingegeben haben, wird immer noch die ungültige URL-Nachricht angezeigt (auch wenn diese derzeit nicht ausgewählt ist). Wählen Sie also URL starten, löschen Sie den darin enthaltenen Text und setzen Sie dann die Eigenschaft Spezifische Seite wie oben beschrieben auf den relativen Pfad.
Andy Brown
7

Das Auswählen einer bestimmten Seite aus den Projekteigenschaften löst mein Problem nicht.

Öffnen Sie in MVC 4 App_Start / RouteConfig.cs

Wenn Sie beispielsweise die Startseite in Anmelden ändern möchten :

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

Wenn Sie wie beschrieben am "Anwendungsstamm" beginnen möchten, klicken Sie mit der rechten Maustaste auf die Seite Default.aspx der obersten Ebene und wählen Sie Als Startseite festlegen. Drücke F5 und du bist fertig.

Wenn Sie mit einer anderen Controller-Aktion beginnen möchten, lesen Sie Marks Antwort.

RichardOD
quelle
1
Funktioniert das für MVC? Für mich versucht es, die ASPX-Seite zu starten und leitet nicht weiter.
Robaticus
1

Wenn Sie diese Seite erneut besuchen, habe ich weitere Informationen, die ich mit anderen teilen kann.

Debugging-Umgebung (mit Visual Studio)

1a) Stephen Walters Link zum Festlegen der Startseite in MVC mithilfe der Projekteigenschaften gilt nur, wenn Sie Ihre MVC-Anwendung debuggen.

1b) Klicken Sie mit der rechten Maustaste auf die ASPX-Seite im Projektmappen-Explorer und wählen Sie "Als Startseite festlegen".

Hinweis: In beiden oben genannten Fällen wird die Einstellung der Startseite nur von Ihrem Visual Studio Development Server erkannt. Es wird von Ihrem bereitgestellten Server nicht erkannt.

Bereitgestellte Umgebung

2a) Um die Startseite festzulegen, ändern Sie den Inhalt von /Views/Home/Index.aspx, um einen "Server.Transfer" oder eine "Response.Redirect" nach Ihren Wünschen auszuführen, sofern Sie keine der Standardroutings geändert haben Seite.

2b) Ändern Sie Ihr Standardrouting in Ihrer global.asax.cs auf die gewünschte Seite.

Gibt es andere Optionen, die den Lesern bekannt sind? Welche der oben genannten Lösungen (einschließlich Ihrer eigenen Option) ist Ihre bevorzugte Lösung (und teilen Sie uns bitte mit, warum)?

Syd
quelle