ASP.NET MVC 4 — tworzenie szkieletu i migracje platformy Entity Framework
Według zespołu obozów internetowych
Pobierz zestaw szkoleniowy dla obozów internetowych
Jeśli znasz metody kontrolera MVC 4 ASP.NET lub zostały ukończone laboratorium "Pomocnicy, formularze i walidacja Hands-On", należy pamiętać, że większość logiki do tworzenia, aktualizowania, aktualizowania i usuwania dowolnej jednostki danych jest powtarzana w całej aplikacji. Nie wspominając już o tym, że jeśli model ma kilka klas do manipulowania, prawdopodobnie będziesz poświęcać dużo czasu na pisanie metod akcji POST i GET dla każdej operacji jednostki, a także każdego z widoków.
W tym laboratorium dowiesz się, jak używać szkieletu ASP.NET MVC 4, aby automatycznie wygenerować punkt odniesienia cruD aplikacji (Tworzenie, odczytywanie, aktualizowanie i usuwanie). Począwszy od prostej klasy modelu, a bez pisania jednego wiersza kodu utworzysz kontroler, który będzie zawierać wszystkie operacje CRUD, a także wszystkie niezbędne widoki. Po utworzeniu i uruchomieniu prostego rozwiązania zostanie wygenerowana baza danych aplikacji wraz z logiką MVC i widokami do manipulowania danymi.
Ponadto dowiesz się, jak łatwo jest używać migracji platformy Entity Framework do przeprowadzania aktualizacji modelu w całej aplikacji. Migracje platformy Entity Framework umożliwią zmodyfikowanie bazy danych po zmianie modelu przy użyciu prostych kroków. Mając to na uwadze, będziesz w stanie wydajniej tworzyć i obsługiwać aplikacje internetowe, korzystając z najnowszych funkcji ASP.NET MVC 4.
Uwaga
Wszystkie przykładowe fragmenty kodu i fragmentów są zawarte w zestawie szkoleniowym web camps dostępnym w witrynie Microsoft-Web/WebCampTrainingKit Releases. Projekt specyficzny dla tego laboratorium jest dostępny w witrynie ASP.NET mvC 4 Entity Framework — tworzenie szkieletów i migracje.
Cele
W tym Hands-On Lab dowiesz się, jak wykonywać następujące działania:
- Użyj ASP.NET szkieletu dla operacji CRUD na kontrolerach.
- Zmień model bazy danych przy użyciu migracji platformy Entity Framework.
Wymagania wstępne
Aby ukończyć to laboratorium, musisz mieć następujące elementy:
- Microsoft Visual Studio Express 2012 dla sieci Web lub superior (przeczytaj dodatek A, aby uzyskać instrukcje dotyczące sposobu jej instalowania).
Konfigurowanie
Instalowanie fragmentów kodu
Dla wygody większość kodu, którym będziesz zarządzać w tym laboratorium, jest dostępna jako fragmenty kodu programu Visual Studio. Aby zainstalować fragmenty kodu, uruchom plik .\Source\Setup\CodeSnippets.vsi .
Jeśli nie znasz fragmentów kodu Visual Studio Code i chcesz dowiedzieć się, jak z nich korzystać, zapoznaj się z dodatkiem z tego dokumentu "Dodatek B: Używanie fragmentów kodu".
Ćwiczenia
Następujące ćwiczenie składa się z tego Hands-On Lab:
Uwaga
To ćwiczenie jest dołączone do folderu Końcowego zawierającego wynikowe rozwiązanie, które należy uzyskać po ukończeniu ćwiczenia. To rozwiązanie można użyć jako przewodnika, jeśli potrzebujesz dodatkowej pomocy podczas wykonywania tego ćwiczenia.
Szacowany czas ukończenia tego laboratorium: 30 minut
Ćwiczenie 1. Używanie ASP.NET szkieletu MVC 4 z migracjami platformy Entity Framework
ASP.NET szkieletu MVC zapewnia szybki sposób generowania operacji CRUD w ustandaryzowany sposób, tworząc niezbędną logikę, która umożliwia aplikacji interakcję z warstwą bazy danych.
W tym ćwiczeniu dowiesz się, jak używać szkieletu ASP.NET MVC 4 z kodem najpierw w celu utworzenia metod CRUD. Następnie dowiesz się, jak zaktualizować model stosując zmiany w bazie danych przy użyciu migracji programu Entity Framework.
Zadanie 1. Tworzenie nowego projektu ASP.NET MVC 4 przy użyciu szkieletu
Jeśli jeszcze nie zostanie otwarty, uruchom program Visual Studio 2012.
Wybierz plik | Nowy projekt. W oknie dialogowym Nowy projekt w obszarze Visual C# | Sekcja sieci Web wybierz pozycję ASP.NET aplikacja internetowa MVC 4. Nadaj projektowi nazwę MVC4andEFMigrations i ustaw lokalizację na Source\Ex1-UsingMVC4ScaffoldingEFMigrations tego laboratorium. Ustaw nazwę rozwiązania na Rozpocznij i upewnij się, że zaznaczono opcję Utwórz katalog dla rozwiązania . Kliknij przycisk OK.
Okno dialogowe Nowy projekt ASP.NET MVC 4
W oknie dialogowym Nowy projekt ASP.NET MVC 4 wybierz szablon Aplikacji internetowej i upewnij się, że razor jest wybranym aparatem widoku. Kliknij przycisk OK, aby utworzyć projekt.
Nowa ASP.NET aplikacja internetowa MVC 4
W Eksplorator rozwiązań kliknij prawym przyciskiem myszy pozycję Modele i wybierz pozycję Dodaj | Klasa, aby utworzyć prostą osobę klasy (POCO). Nadaj mu nazwę Person i kliknij przycisk OK.
Otwórz klasę Person i wstaw następujące właściwości.
(Fragment kodu — ASP.NET migracji MVC 4 i Entity Framework — właściwości ex1 osoby)
using System; using System.Collections.Generic; using System.Linq; using System.Web; namespace MVC4EF.Models { public class Person { public int PersonID { get; set; } public string FirstName { get; set; } public string LastName { get; set; } } }
Kliknij pozycję Kompiluj | Utwórz rozwiązanie w celu zapisania zmian i skompilowania projektu.
Kompilowanie aplikacji
W Eksplorator rozwiązań kliknij prawym przyciskiem myszy folder controllers i wybierz pozycję Dodaj | Kontroler.
Nadaj kontrolerowi nazwę PersonController i wypełnij opcje tworzenia szkieletu z następującymi wartościami.
Z listy rozwijanej Szablon wybierz kontroler MVC z akcjami odczytu/zapisu i widokami przy użyciu opcji Entity Framework .
Z listy rozwijanej Klasa modelu wybierz klasę Person .
Na liście Klasa Kontekstu danych wybierz pozycję <Nowy kontekst danych...>. Wybierz dowolną nazwę i kliknij przycisk OK.
Na liście rozwijanej Widoki upewnij się, że wybrano pozycję Razor .
Dodawanie kontrolera person z szkieletem
Kliknij przycisk Dodaj , aby utworzyć nowy kontroler dla osoby ze szkieletem. Teraz wygenerowano akcje kontrolera, a także widoki.
Po utworzeniu kontrolera osoby ze szkieletem
Otwórz klasę PersonController . Zwróć uwagę, że pełne metody akcji CRUD zostały wygenerowane automatycznie.
Wewnątrz kontrolera osoby
Zadanie 2. Uruchamianie aplikacji
W tym momencie baza danych nie została jeszcze utworzona. W tym zadaniu uruchomisz aplikację po raz pierwszy i przetestujesz operacje CRUD. Baza danych zostanie utworzona na bieżąco z kodem Code First.
Naciśnij klawisz F5 , aby uruchomić aplikację.
W przeglądarce dodaj /Person do adresu URL, aby otworzyć stronę Osoba.
Aplikacja: pierwsze uruchomienie
Teraz poznasz strony Osoby i przetestujesz operacje CRUD.
Kliknij pozycję Utwórz nowy , aby dodać nową osobę. Wprowadź imię i nazwisko, a następnie kliknij przycisk Utwórz.
Dodawanie nowej osoby
Na liście osoby możesz usuwać, edytować lub dodawać elementy.
Lista osób
Kliknij pozycję Szczegóły , aby otworzyć szczegóły osoby.
Szczegóły osoby
Zamknij przeglądarkę i wróć do programu Visual Studio. Zwróć uwagę, że utworzono całą jednostkę CRUD dla jednostki osoby w całej aplikacji — od modelu do widoków — bez konieczności pisania pojedynczego wiersza kodu.
Zadanie 3. Aktualizowanie bazy danych przy użyciu migracji programu Entity Framework
W tym zadaniu zaktualizujesz bazę danych przy użyciu migracji programu Entity Framework. Dowiesz się, jak łatwo jest zmienić model i odzwierciedlić zmiany w bazach danych przy użyciu funkcji Migracje platformy Entity Framework.
Otwórz konsolę Menedżera pakietów. Wybierz pozycję Narzędzia>Menedżer pakietów NuGet>Konsola menedżera pakietów.
W konsoli menedżera pakietów wprowadź następujące polecenie:
PMC
Enable-Migrations -ContextTypeName [ContextClassName]
Włączanie migracji
Polecenie Enable-Migration tworzy folder Migrations , który zawiera skrypt umożliwiający zainicjowanie bazy danych.
Folder Migracje
Otwórz plik Configuration.cs w folderze Migrations. Znajdź konstruktor klasy i zmień wartość AutomaticMigrationsEnabled na true.
public Configuration() { AutomaticMigrationsEnabled = true; }
Otwórz klasę Person i dodaj atrybut dla drugiego imienia osoby. W przypadku tego nowego atrybutu zmieniasz model.
public class Person { public int PersonID { get; set; } public string FirstName { get; set; } public string LastName { get; set; } public string MiddleName { get; set; } }
Wybierz pozycję Kompilacja | Skompiluj rozwiązanie w menu, aby skompilować aplikację.
Kompilowanie aplikacji
W konsoli menedżera pakietów wprowadź następujące polecenie:
PMC
Add-Migration AddMiddleName
To polecenie wyszuka zmiany w obiektach danych, a następnie doda niezbędne polecenia, aby odpowiednio zmodyfikować bazę danych.
Dodawanie średniej nazwy
(Opcjonalnie) Możesz uruchomić następujące polecenie, aby wygenerować skrypt SQL z aktualizacją różnicową. Pozwoli to ręcznie zaktualizować bazę danych (w tym przypadku nie jest to konieczne) lub zastosować zmiany w innych bazach danych:
PMC
Update-Database -Script -SourceMigration: $InitialDatabase
Generowanie skryptu SQL
Aktualizacja skryptu SQL
W konsoli menedżera pakietów wprowadź następujące polecenie, aby zaktualizować bazę danych:
PMC
Update-Database -Verbose
aktualizowanie bazy danych
Spowoduje to dodanie kolumny MiddleName w tabeli Osoby w celu dopasowania do bieżącej definicji klasy Person.
Po zaktualizowaniu bazy danych kliknij prawym przyciskiem myszy folder Kontroler i wybierz polecenie Dodaj | Kontroler , aby ponownie dodać kontroler osoby (Zakończ z tymi samymi wartościami). Spowoduje to zaktualizowanie istniejących metod i widoków dodających nowy atrybut.
Aktualizowanie kontrolera
Kliknij pozycję Dodaj. Następnie wybierz wartości Overwrite PersonController.cs i zastąp skojarzone widoki , a następnie kliknij przycisk OK.
Aktualizowanie kontrolera
Task4 — Uruchamianie aplikacji
Naciśnij klawisz F5 , aby uruchomić aplikację.
Otwórz /Person. Zwróć uwagę, że dane zostały zachowane, a kolumna nazwy środkowej została dodana.
Dodano nazwę środkową
Po kliknięciu przycisku Edytuj będzie można dodać drugie imię do bieżącej osoby.
Podsumowanie
W tym laboratorium Hands-On przedstawiono proste kroki tworzenia operacji CRUD przy użyciu szkieletu ASP.NET MVC 4 przy użyciu dowolnej klasy modelu. Następnie wiesz już, jak wykonać kompleksową aktualizację w aplikacji — od bazy danych do widoków — przy użyciu migracji programu Entity Framework.
Dodatek A: Instalowanie Visual Studio Express 2012 dla sieci Web
Możesz zainstalować program Microsoft Visual Studio Express 2012 dla sieci Web lub innej wersji "Express" przy użyciu Instalator platformy Microsoft Web. Poniższe instrukcje przeprowadzą Cię przez kroki wymagane do zainstalowania programu Visual Studio Express 2012 for Web przy użyciu Instalator platformy Microsoft Web.
Przejdź do witryny https://go.microsoft.com/?linkid=9810169. Alternatywnie, jeśli masz już zainstalowany Instalator platformy internetowej, możesz go otworzyć i wyszukać produkt "Visual Studio Express 2012 for Web with Windows Azure SDK" (Visual Studio Express 2012 dla sieci Web przy użyciu zestawu Windows Azure SDK).
Kliknij pozycję Zainstaluj teraz. Jeśli nie masz Instalatora platformy internetowej , nastąpi przekierowanie do pobrania i zainstalowania go najpierw.
Po otwarciu Instalatora platformy internetowej kliknij przycisk Zainstaluj , aby rozpocząć instalację.
Instalowanie Visual Studio Express
Przeczytaj wszystkie licencje i postanowienia dotyczące produktów, a następnie kliknij przycisk Akceptuję , aby kontynuować.
Akceptowanie postanowień licencyjnych
Poczekaj na zakończenie procesu pobierania i instalacji.
Postęp instalacji
Po zakończeniu instalacji kliknij przycisk Zakończ.
Instalacja została ukończona
Kliknij przycisk Zakończ , aby zamknąć Instalatora platformy sieci Web.
Aby otworzyć Visual Studio Express dla sieci Web, przejdź do ekranu startowego i zacznij pisać "VS Express", a następnie kliknij kafelek VS Express for Web.
Kafelek programu VS Express dla sieci Web
Dodatek B: Używanie fragmentów kodu
Dzięki fragmentom kodu masz cały potrzebny kod na wyciągnięcie ręki. Dokument laboratorium zawiera informacje o tym, kiedy można ich używać, jak pokazano na poniższej ilustracji.
Wstawianie kodu do projektu przy użyciu fragmentów kodu w programie Visual Studio Code
Aby dodać fragment kodu przy użyciu klawiatury (tylko w języku C#)
- Umieść kursor, w którym chcesz wstawić kod.
- Zacznij wpisywać nazwę fragmentu kodu (bez spacji lub łączników).
- Obserwuj, jak funkcja IntelliSense wyświetla pasujące nazwy fragmentów kodu.
- Wybierz poprawny fragment kodu (lub kontynuuj wpisywanie do momentu wybrania nazwy całego fragmentu kodu).
- Naciśnij dwukrotnie klawisz Tab, aby wstawić fragment kodu w lokalizacji kursora.
Zacznij wpisywać nazwę fragmentu kodu
Naciśnij klawisz Tab, aby wybrać wyróżniony fragment kodu
Naciśnij ponownie klawisz Tab, a fragment kodu zostanie rozwinąć
Aby dodać fragment kodu przy użyciu myszy (C#, Visual Basic i XML) 1. Kliknij prawym przyciskiem myszy miejsce, w którym chcesz wstawić fragment kodu.
- Wybierz pozycję Wstaw fragment kodu , a następnie pozycję Moje fragmenty kodu.
- Wybierz odpowiedni fragment kodu z listy, klikając go.
fragment kodu fragment kodu
Kliknij prawym przyciskiem myszy miejsce, w którym chcesz wstawić fragment kodu, a następnie wybierz polecenie Wstaw fragment kodu
Wybierz odpowiedni fragment kodu z listy, klikając go
Opinia
https://aka.ms/ContentUserFeedback.
Dostępne już wkrótce: W 2024 r. będziemy stopniowo wycofywać zgłoszenia z serwisu GitHub jako mechanizm przesyłania opinii na temat zawartości i zastępować go nowym systemem opinii. Aby uzyskać więcej informacji, sprawdź:Prześlij i wyświetl opinię dla