Prace nad projektem rozpocznę od usunięcia wszystkich metod z kontrolera Home, oraz usunięcia wszystkich widoków które zostały dla niego stworzone. Teraz z takim czystym projektem mogę rzeźbić swoją rzeczywistość.
Zacznę od utworzenia prostej metody Index, która zwróci tylko i wyłącznie widok:
Następnie wyklikam dodanie nowego widoku do mojego projektu:
Ponieważ nie chce na razie przesyłać danych na ten widok (niżej), oraz nie chce korzystać ze wspólnych layoutów (później). Widok będzie prezentować się tak:
W zasadzie nic na nim nie ma, a jednak coś się wyświetla.
Teraz po zapisaniu można śmiało nacisnąć F5 i powinna ukazać się przeglądarka, która wyświetli na ekranie: .NET Core ASP.MVC Ultra Awesome ToDo Applition – the proper part
Wow – można pomyśleć. W takim razie wyświetlmy jakąś spreparowaną listę rzeczy, które mam(y) w planach zrobić.
Definicja obiektu, który ma przechowywać dane potrzebne do wyświetlenia oraz zmodyfikowany kontroler wygląda teraz tak:
Pojawiała się prosta klasa (@21) która opakowuje stringa w obiekt. W metodzie Index (@9) tworzę listę zadań do zrobienia (@11-@15), a następnie przekazuje ją do widoku (@17). Widok musi teraz być świadomy tego, że pracować będzie w jakimś typem danych, dlatego na samej górze pliku index.cshtml dodaje taki oto wpis:
Od teraz mogę korzystać z listy TodoItem na widoku, z czego nie waham się skorzystać, modyfikuje zawarość body na stronie na taką:
Teraz po uruchomieniu cuda techniki powinna zostać wyświetlona prosta tabela zawierająca listę zadań do zrobienia.
Brakuje opcji dodawania nowego zadania czy usunięcia wykonanego zadania.
Źródła dostępne pod adresem: https://github.com/jstadnicki/mvc-core
Czytaj poprzedni:
FileNewProject .NET Core asp mvc
Czytaj następny:
Przesyłanie danych z formularza na serwer – nowy razor
One thought on “Wyświetlanie danych na widoku w razorze w .net core asp mvc”