Dodawanie nowego modelu

Autor : Rick Anderson

Uwaga / Notatka

Zaktualizowana wersja tego samouczka jest dostępna tutaj przy użyciu najnowszej wersji programu Visual Studio. W nowym samouczku jest używany ASP.NET Core MVC, który oferuje wiele ulepszeń w porównaniu do tego samouczka.

W tym samouczku przedstawiono ASP.NET Core MVC z kontrolerami i widokami. Razor Pages to nowa alternatywa w ASP.NET Core, model programowania oparty na stronach, który ułatwia tworzenie internetowego interfejsu użytkownika, czyniąc je łatwiejszym i bardziej wydajnym. Zalecamy wypróbowanie samouczka razor Pages przed wersją MVC. Samouczek Razor Pages

  • Jest łatwiejsze do naśladowania.
  • Obejmuje więcej funkcji.
  • Jest preferowanym podejściem do tworzenia nowych aplikacji.

W tej sekcji dodasz kilka klas do zarządzania filmami w bazie danych. Te klasy będą częścią "modelu" aplikacji MVC ASP.NET.

Użyjesz technologii dostępu do danych programu .NET Framework znanej jako Entity Framework , aby zdefiniować te klasy modeli i pracować z tymi klasami. Platforma Entity Framework (często nazywana EF) obsługuje paradygmat programowania o nazwie Code First. Funkcja Code First umożliwia tworzenie obiektów modelu przez pisanie prostych klas. (Są one również nazywane klasami POCO od "plain-old CLR objects"). Następnie możesz dynamicznie utworzyć bazę danych bezpośrednio z tych klas, co pozwala na bardzo przejrzysty i szybki przepływ pracy podczas tworzenia. Jeśli musisz najpierw utworzyć bazę danych, możesz skorzystać z tego samouczka, aby dowiedzieć się więcej o tworzeniu aplikacji MVC i EF. Następnie możesz skorzystać z samouczka Toma Fizmakens ASP.NET Scaffolding, który obejmuje podejście "database-first".

Dodawanie klas modelu

W Eksplorator rozwiązań kliknij prawym przyciskiem myszy folder Models, wybierz polecenie Dodaj, a następnie wybierz pozycję Klasa.

Zrzut ekranu przedstawiający okno Eksploratora rozwiązań. Menu kontekstowe z prawego przycisku myszy dla folderu Models i podmenu Dodaj są otwarte. Wybrano klasę.

Wprowadź nazwę klasy "Movie".

Dodaj do klasy następujące pięć właściwości Movie :

using System;

namespace MvcMovie.Models
{
    public class Movie
    {
        public int ID { get; set; }
        public string Title { get; set; }
        public DateTime ReleaseDate { get; set; }
        public string Genre { get; set; }
        public decimal Price { get; set; }
    }
}

Użyjemy Movie klasy do reprezentowania filmów w bazie danych. Każde wystąpienie Movie obiektu będzie odpowiadać wierszowi w tabeli bazy danych, a każda właściwość Movie klasy będzie mapować na kolumnę w tabeli.

Uwaga: aby używać elementu System.Data.Entity i powiązanej klasy, należy zainstalować pakiet NuGet programu Entity Framework. Aby uzyskać dalsze instrukcje, postępuj zgodnie z linkiem.

W tym samym pliku dodaj następującą MovieDBContext klasę:

using System;
using System.Data.Entity;

namespace MvcMovie.Models
{
    public class Movie
    {
        public int ID { get; set; }
        public string Title { get; set; }
        public DateTime ReleaseDate { get; set; }
        public string Genre { get; set; }
        public decimal Price { get; set; }
    }

    public class MovieDBContext : DbContext
    {
        public DbSet<Movie> Movies { get; set; }
    }
}

Klasa MovieDBContext reprezentuje kontekst bazy danych filmów programu Entity Framework, który obsługuje pobieranie, przechowywanie i aktualizowanie Movie wystąpień klas w bazie danych. Element MovieDBContext pochodzi z klasy bazowej DbContext dostarczonej przez program Entity Framework.

Aby móc odwoływać się do DbContext i DbSet, należy dodać następującą instrukcję using na początku pliku.

using System.Data.Entity;

Możesz to zrobić, ręcznie dodając instrukcję using, lub możesz umieścić kursor nad czerwonymi liniami falistymi, kliknąć Show potential fixes i kliknąć using System.Data.Entity;

Zrzut ekranu przedstawiający menu Pokaż potencjalne poprawki. Wybrano opcję Użycie jednostki danych systemowych i wyświetlane jest ostrzeżenie o braku możliwości znalezienia.

Uwaga: kilka nieużywanych instrukcji using zostało usuniętych. Program Visual Studio wyświetli nieużywane zależności jako szare. Nieużywane zależności można usunąć, umieszczając kursor na szarych zależnościach, klikając i klikając Show potential fixes pozycję Usuń nieużywane użycie.

Zrzut ekranu przedstawiający menu Pokaż potencjalne poprawki. Zaznaczono opcję Usuń niepotrzebne użycie.

W końcu dodaliśmy model (M w MVC). W następnej sekcji będziesz pracować z parametrami połączenia bazy danych.