Jak utworzyć dynamiczną stronę HTML z użyciem składni Razor? | Kurs aplikacji web, cz. 4

Ten odcinek kursu aplikacji web jest w całości poświęcony bazom danych. Na początek dowiesz się o zaletach wykorzystania bazy w swoim projekcie strony www. W części praktycznej zobaczymy jak wykorzystać WebMatrix do zarządzania bazą danych, potem pobierzemy i wyświetlimy dane na stronie internetowej.
Witam,
Czy będą kolejne, bardziej zaawansowane części kursu?
Oczywiście, kolejne pdcinku kursu, które będą dotyczyć innych i bardziej zaawansowanych tematów są publikowane w każdy wtorek i czwartek. Pełna agenda kursu jest dostępna na portalu Codeguru.
Może mi ktoś powiedzieć co jest nie tak u mnie, robiłem wszystko krok w krok:
Błąd serwera w aplikacji '/'.
Files with leading underscores ("_") cannot be served.
Opis: Podczas wykonywania bieżącego żądania sieci Web wystąpił nieobsługiwany wyjątek. Aby uzyskać dodatkowe informacje o błędzie i miejscu jego występowania w kodzie, przejrzyj ślad stosu.
Szczegóły wyjątku: System.Web.HttpException: Files with leading underscores ("_") cannot be served.
Błąd źródła:
Podczas wykonywania bieżącego żądania sieci Web został wygenerowany nieobsługiwany wyjątek. Informacje dotyczące pochodzenia i lokalizacji wyjątku można zidentyfikować przy użyciu poniższego śladu stosu wyjątku.
Ślad stosu:
[HttpException (0x80004005): Files with leading underscores ("_") cannot be served.]
System.Web.WebPages.WebPageRoute.GetRouteLevelMatch(String pathValue, IEnumerable`1 supportedExtensions, VirtualPathFactoryManager virtualPathFactoryManager) +298
System.Web.WebPages.WebPageRoute.MatchRequest(String pathValue, IEnumerable`1 supportedExtensions, VirtualPathFactoryManager virtualPathFactoryManager) +295
System.Web.WebPages.WebPageRoute.DoPostResolveRequestCache(HttpContextBase context) +179
System.Web.WebPages.WebPageHttpModule.OnApplicationPostResolveRequestCache(Object sender, EventArgs e) +91
System.Web.SyncEventExecutionStep.System.Web.HttpApplication.IExecutionStep.Execute() +212
System.Web.HttpApplication.ExecuteStep(IExecutionStep step, Boolean& completedSynchronously) +76
Naprawiłem to, ale w inny sposób, w pageStart zmieniłem
@{ Layout =
"~/siteLayout.cshtml";
}
było: @{ Layout =
"~/_siteLayout.cshtml";
}
I wszystkie _ wykasowałem z innych stron cshtml także teraz jest footer zamiast _footer
Czy tak może być? bo teraz działa bez zarzutu.
Pliki zaczynające się od znaku podkreślenia są traktowane w "specjalny" sposób. Nie można ich wyświetlać bezpośrednio w przeglądarce.
Najprawdopodobniej próbowałeś uruchomić stronę "movies.cshtml", ale wybrany do edycji był plik "_siteLayout.cshtml" i po kliknieciu Run pojawił się twój błąd.
Podczas pracy ze stronami i szablonami trzeba zwracać uwagę na pliki, które się uruchamia w przeglądarce.
Odnośnie pytania czy można usunąć te "_" z nazw plików. Można i strona będzie dalej działać, ale ja bym tego unikał, ponieważ nie ma sensu aby wyświetlać sam szablon bez strony z zawartością.