Руководство. Изменение базы данных для EF Database First с помощью ASP.NET приложения MVC

С помощью MVC, Entity Framework и ASP.NET формирования шаблонов можно создать веб-приложение, предоставляющее интерфейс для существующей базы данных. В этой серии учебников показано, как автоматически создавать код, который позволяет пользователям отображать, изменять, создавать и удалять данные, хранящееся в таблице базы данных. Созданный код соответствует столбцам в таблице базы данных.

В этом руководстве основное внимание уделяется обновлению структуры базы данных и распространению этих изменений в веб-приложении.

Изучив это руководство, вы:

  • Добавление столбца
  • Добавление свойства в представления

Предварительные требования

Добавление столбца

При обновлении структуры таблицы в базе данных необходимо обеспечить распространение изменений на модель данных, представления и контроллер.

В этом руководстве вы добавите новый столбец в таблицу Student, чтобы записать отчество учащегося. Чтобы добавить этот столбец, откройте проект базы данных и файл Student.sql. С помощью конструктора или кода T-SQL добавьте столбец с именем MiddleName , который является NVARCHAR(50) и допускает значения NULL.

Разверните это изменение в локальной базе данных, запустив проект базы данных (или F5). Новое поле добавляется в таблицу. Если вы не видите его в SQL Server обозреватель объектов, нажмите кнопку Обновить на панели.

Показать новый столбец

Новый столбец существует в таблице базы данных, но в настоящее время он не существует в классе модели данных. Необходимо обновить модель, чтобы включить новый столбец. В папке Models откройте файл ContosoModel.edmx , чтобы отобразить схему модели. Обратите внимание, что модель Student не содержит свойства MiddleName. Щелкните правой кнопкой мыши в любом месте области конструктора и выберите Обновить модель из базы данных.

В мастере обновления перейдите на вкладку Обновить , а затем выберите Таблицы>dbo>Student. Нажмите кнопку Готово.

После завершения процесса обновления схема базы данных включает новое свойство MiddleName . Сохраните файл ContosoModel.edmx . Этот файл необходимо сохранить для распространения нового свойства в класс Student.cs . Теперь вы обновили базу данных и модель.

Создайте решение.

Добавление свойства в представления

К сожалению, представления по-прежнему не содержат новое свойство. Обновить представления можно двумя способами: повторно создать представления, еще раз добавив шаблон для класса Student, или вручную добавить новое свойство в существующие представления. В этом руководстве вы добавите шаблон еще раз, так как вы не внесли никаких настраиваемых изменений в автоматически создаваемые представления. Вы можете добавить свойство вручную, если вы внесли изменения в представления и не хотите терять эти изменения.

Чтобы убедиться, что представления созданы повторно, удалите папку Students в разделе Представления и удалите StudentController. Затем щелкните правой кнопкой мыши папку Контроллеры и добавьте шаблон для модели Student . Снова назовите контроллер StudentsController. Выберите Добавить.

Выполните повторную сборку решения. Представления теперь содержат свойство MiddleName.

показать отчество

Дальнейшие действия

Изучив это руководство, вы:

  • Добавлен столбец
  • Добавлено свойство в представления.

Перейдите к следующему учебнику, чтобы узнать, как настроить представление для отображения сведений о записи учащегося.