Добавление новой модели

Рик Андерсон

Примечание

Обновленная версия этого руководства доступна здесь , используя последнюю версию Visual Studio. В новом руководстве используется ASP.NET Core MVC, который предоставляет множество улучшений по сравнению с этим руководством.

В этом руководстве описывается модель MVC ASP.NET Core с контроллерами и представлениями. Razor Pages — это новая альтернатива в ASP.NET Core, модель программирования на основе страниц, которая упрощает и повышает эффективность создания пользовательского веб-интерфейса. Мы рекомендуем ознакомиться с руководством по Razor Pages до версии MVC. Руководство по Razor Pages:

  • проще для выполнения;
  • охватывает дополнительные возможности;
  • Предпочтительный подход к разработке новых приложений.

В этом разделе вы добавите некоторые классы для управления фильмами в базе данных. Эти классы будут частью модели приложения ASP.NET MVC.

Для определения этих классов моделей и работы с этими классами вы будете использовать технологию доступа к данным платформа .NET Framework, известную как Entity Framework. Платформа Entity Framework (часто называемая EF) поддерживает парадигму разработки Под названием Code First. Code First позволяет создавать объекты модели путем написания простых классов. (Они также известны как классы POCO, от "простых старых объектов CLR".) Затем вы можете создать базу данных на лету из ваших классов, что обеспечивает очень чистый и быстрый рабочий процесс разработки. Если вам нужно сначала создать базу данных, вы можете ознакомиться с этим руководством, чтобы узнать о разработке приложений MVC и EF. Затем вы можете выполнить ASP.NET руководство по созданию шаблонов Тома Физмакенса, в котором рассматривается первый подход к базе данных.

Добавление классов модели

В Обозреватель решений щелкните правой кнопкой мыши папку Модели, выберите Добавить, а затем — Класс.

Снимок экрана: окно Обозреватель решений. Откроется меню правой кнопкой мыши в папке Models и подменю Добавить. Выбран класс.

Введите имя класса Movie.

Добавьте в класс следующие пять свойств 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; }
    }
}

Мы будем использовать класс для Movie представления фильмов в базе данных. Каждый экземпляр Movie объекта будет соответствовать строке в таблице базы данных, а каждое Movie свойство класса будет сопоставляться со столбцом в таблице.

Примечание. Чтобы использовать System.Data.Entity и связанный класс, необходимо установить пакет NuGet Entity Framework. Дополнительные инструкции см. по ссылке.

В том же файле добавьте следующий MovieDBContext класс:

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; }
    }
}

Класс MovieDBContext представляет контекст базы данных фильмов Entity Framework, который обрабатывает получение, хранение и обновление Movie экземпляров класса в базе данных. Является MovieDBContext производным DbContext от базового класса, предоставляемого Entity Framework.

Чтобы иметь возможность ссылаться на DbContext и DbSet, необходимо добавить следующий using оператор в начало файла:

using System.Data.Entity;

Для этого вручную добавьте оператор using или наведите указатель мыши на красные волнистые линии, щелкните Show potential fixes и щелкните using System.Data.Entity;

Снимок экрана: меню

Примечание. Несколько неиспользуемых using инструкций удалены. Неиспользуемые зависимости в Visual Studio будут отображаться серым цветом. Вы можете удалить неиспользуемые зависимости, наведите указатель мыши на серые зависимости и щелкните Show potential fixesУдалить неиспользуемые зависимости.

Снимок экрана: меню

Наконец, мы добавили модель (M в MVC). В следующем разделе вы будете работать со строкой подключения к базе данных.