2009-08-26 14 views
108

Jak rozpocząć debugowanie aplikacji w katalogu głównym aplikacji? Na przykład: http://localhost:49742/Jak ustawić stronę początkową do debugowania w aplikacji ASP.NET MVC?

Ja zawsze dostaję stronę, która nie istnieje, takie jak: http://localhost:49742/Views/Home/About.aspx

Zauważ, że byłoby OK, aby rozpocząć w http://localhost:49742/Views/Home/About

+0

pokrewne: http://stackoverflow.com/questions/2821796/visual-studio-asp-net-mvc-undo-set-as-start-page-action – JNF

Odpowiedz

178

Przejdź do właściwości swojego projektu i ustaw właściwość strony początkowej.

  1. idź do projektu Properties
  2. Przejdź do zakładki internetowej
  3. Wybierz the konkretną stronę przycisk radiowy
  4. typu w żądany adres URL w polu tekstu konkretną stronę
+1

@ tu Mark-to dobre łącze opisujące ten proces bardziej szczegółowo - http://stephenwalther.com/blog/archive/2008/07/10/asp-net-mvc-tip-17-how-to-run-an-asp-net- mvc-application.aspx. Powiedziałbym to w twojej odpowiedzi. – RichardOD

+19

+1 Upewnij się, że ** wpisujesz go ** w kroku 4. Wybranie za pomocą przycisku [...] spowoduje utworzenie fałszywego adresu URL: D –

+10

Jeśli właśnie testujesz i pracujesz z domyślnym szablonem projektu MVC w VS. NET 2010, po prostu * usuń * dowolną wartość strony początkowej, a następnie debuguj swój projekt. To zabierze Cię do głównego "Witamy w ASP.NET MVC!" strona. – atconway

1

Jeśli chcesz zacznij od "katalogu głównego aplikacji" podczas opisywania prawym przyciskiem myszy na stronie Default.aspx najwyższego poziomu i wybierz ustaw jako stronę początkową. Hit F5 i gotowe.

Jeśli chcesz zacząć od innej czynności kontrolera, zobacz odpowiedź Marka.

+0

Czy to działa dla MVC? Dla mnie próbuje uruchomić stronę ASPX i nie kieruje. – Robaticus

0

Powtarzam tę stronę i mam więcej informacji do udostępnienia innym.

środowisko debugowania (przy użyciu Visual Studio)

1a) Opinie Stephena Waltera ustawić stronę startową w MVC z wykorzystaniem właściwości projektu ma zastosowanie tylko podczas debugowania aplikacji MVC.

1b) Kliknij prawym przyciskiem myszy na stronie .aspx w oknie Solution Explorer i wybierz "Ustaw jako stronę startową" zachowuje się tak samo.

Uwaga: w obu powyższych przypadkach ustawienie strony startowej jest rozpoznawane tylko przez serwer Visual Studio Development Server. Nie jest rozpoznawany przez twój wdrożony serwer.

Wdrożone środowisko

2a) Aby ustawić stronę startową, przy założeniu, że nie zmienia żadnej z tras domyślnych, zmienić treść /Views/Home/Index.aspx zrobić „Server. Przenieś "lub" Response.Redirect "do wybranej strony.

2b) Zmień domyślny routing w pliku global.asax.cs na żądaną stronę.

Czy są jakieś inne opcje, o których wiedzą czytelnicy? Które z powyższych (w tym twoja własna opcja) byłyby Twoim preferowanym rozwiązaniem (i proszę podziel się z nami tym pytaniem).

18

Chociaż można mieć stronę domyślną w projekcie MVC, tym bardziej konwencjonalna realizacja dla domyślnego widoku byłoby użyć domyślnego kontrolera, implememented w global.asax poprzez „RegisterRoutes (...)' metoda. Na przykład, jeśli chcesz swoją Public \ regulatora Początek być domyślna trasa/view, kod byłoby:

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

    } 

do tego, aby być funkcjonalne, które są wymagane, aby mieć komplet Strona startowa w projekcie.

5

Wybór konkretnej strony z właściwości projektu nie rozwiązuje mojego problemu.

w MVC 4 otwarte App_Start/RouteConfig.cs

Na przykład, jeśli chcesz zmienić stronę startową na Login:

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

Działa to dla mnie pod konkretną stronę dla MVC:

/Home/Index 

Aktualizacja: Obecnie po prostu używam ukośnika w polu tekstowym "Specific Page" i przenoszę mnie na stronę główną zdefiniowaną w routing:

/ 
+0

Przyjemna prosta odpowiedź. Ale uwaga - jeśli wprowadzisz coś podobnego do URL-a początkowego, otrzymasz wiadomość o nieprawidłowym adresie URL (nawet jeśli nie jest ona obecnie wybrana). Dlatego wybierz Start URL, usuń tekst w nim, THEN ustaw właściwość Specific Page na względną ścieżkę jak powyżej. –

Powiązane problemy