Wyświetlanie danych na widoku w razorze w .net core asp mvc

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

  1. Pingback: dotnetomaniak.pl

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *