Поделиться через


Как обновить EDMX-файл при изменении базы данных (средства модели EDM)

Конструктор моделей EDM ADO.NET (конструктор сущностей) для обновления EDMX-файла в соответствии с изменениями в базе данных использует мастер обновления моделей. Мастер обновления моделей в процессе своей работы перезаписывает модель хранения. Мастер обновления моделей вносит также изменения в концептуальную модель и сопоставления, но эти изменения вносятся только при добавлении объектов в базу данных. Например, новые типы сущностей добавляются в концептуальную модель при добавлении таблиц в базу данных, а новые свойства добавляются к типам сущностей при добавлении столбцов в таблицу. Дополнительные сведения об изменениях, вносимых в EDMX-файл, см. в разделе Изменения в EDMX-файле, выполненные мастером обновления моделей.

Мастер обновления моделей выполняет следующие действия.

  • Если объект удален из базы данных, мастер удаляет объект из модели хранения. Спецификации сопоставления обновляются таким образом, что объекты в концептуальной модели не сопоставляются с элементами хранения, которые более не существуют. Существующие объекты концептуальной модели не удаляются.

  • Если объект добавлен в базу данных (или не был включен в предыдущую модель), можно добавить объект в модель. Модель хранения обновляется вновь добавленным объектом. В случае таблицы или представления (но не хранимой процедуры) создается соответствующий тип сущности и сопоставляется с объектом.

  • Если объект обновлен, мастер обновляет определение объекта в модели хранения. Если в таблицу или представление добавлены новые столбцы, то соответствующие типы сущностей обновляются с учетом совпадающих свойств. Если соответствующие типы сущностей являются частью иерархии наследования, то с учетом совпадающих свойств обновляется только затронутая сущность, ближайшая к корневому уровню иерархии. Это исключает возможность определения дочерними сущностями в иерархии таких же свойств, как у их предков.

Обновление EDMX-файла при изменениях базы данных

  1. В обозревателе моделей щелкните правой кнопкой мыши EDMX-файл и выберите пункт Обновить модель из базы данных.

    Запускается мастер обновления моделей. Если не задано соединение с базой данных, то появляется диалоговое окно Выбор подключения к базе данных. В противном случае появляется диалоговое окно Выбор объектов базы данных.

  2. Если появится диалоговое окно Выбор подключения к базе данных, укажите соединение с базой данных. Иначе перейдите к следующему шагу.

    Более подробные сведения о задании соединения см. в разделе Диалоговое окно «Выбор подключения к данным» (мастер моделей EDM). После того как задано соединение, нажмите кнопку Далее, чтобы открыть диалоговое окно Выбор объектов базы данных.

  3. Щелкните вкладку Добавление.

    Отображаются узлы для таблиц, представлений и хранимых процедур. Если объекты добавлены в базу данных (или не были включены в предыдущую модель хранения), то можно развернуть соответствующий узел, чтобы просмотреть объекты, доступные для добавления в концептуальную модель.

    Cc716697.note(ru-ru,VS.100).gifПримечание
    Если объект удален из концептуальной модели, но не должен также удаляться из модели хранения, то объект будет недоступен для добавления в концептуальную модель хранения.Дополнительные сведения см. в разделе Как удалять объекты из режима хранения (средства работы с моделью EDM).

  4. Разверните узлы Таблицы, Представления и Хранимые процедуры, после чего отметьте объекты, которые нужно добавить в EDMX-файл.

  5. Выберите вкладку Обновление.

    Отображаются узлы для таблиц, представлений и хранимых процедур, которые включены в существующую модель хранения. Любые изменения, внесенные в объекты базы данных, будут отражены в обновленной модели хранения. Изменения в концептуальную модель вносятся при добавлении столбцов в таблицу или представление.

  6. Выберите вкладку Удаление.

    Отображаются узлы для таблиц, представлений и хранимых процедур. Если объект удален из базы данных и был включен в предыдущую модель хранения, то можно развернуть соответствующий узел. Объекты в этих узлах будут удалены из обновленной модели.

  7. Нажмите кнопку Готово, чтобы обновить EDMX-файл в соответствии с изменениями в базе данных.

Cc716697.note(ru-ru,VS.100).gifПримечание
Концептуальная модель будет обновлена только для объектов, добавленных в базу данных.Все другие изменения концептуальной модели необходимо внести вручную.Дополнительные сведения об обновлении концептуальной модели см. в разделе Задачи средств модели EDM.

См. также

Основные понятия

Конструктор моделей EDM ADO.NET
Изменения в EDMX-файле, выполненные мастером обновления моделей

Другие ресурсы

Задачи средств модели EDM
Сценарии средств работы с моделью EDM