Entity Framework 6.0 SQL - первая синхронизация с базой данных без .edmx? - PullRequest
1 голос
/ 07 февраля 2020

У меня есть база данных с некоторыми таблицами для школьного проекта, и у меня есть модель с EF 6.0 SQL - первый подход. Мне нужно обновить базу данных новой таблицей и обновить существующую таблицу новым столбцом. Суть в том, что у меня нет файла * .edmx. Как я могу обновить модель без нее? Если это невозможно, то как я могу сгенерировать * .edmx, не прерывая существующую модель?

1 Ответ

1 голос
/ 07 февраля 2020

Сущности по сути являются POCO, поэтому вам просто нужно обновить схему и обновить классы сущностей, чтобы они соответствовали. Для новых сущностей, если в проекте не используется edmx, он должен либо использовать классы, расширяющие EntityTypeConfiguration, либо настраивать объекты с помощью modelBuilder для события OnModelCreating в DbContext.

EF может разрешить самые общие сопоставления с использованием соглашения, поэтому добавление столбца в таблицу обычно означает просто добавление свойства к объекту. Отображение вступает в игру только тогда, когда вы хотите изменить именование столбцов, обработать различия приведения типов или использовать идентифицируемые / вычисляемые столбцы. Для новых сущностей он также может использовать соглашение, но обычно для имени таблицы, имени ПК и таких вещей, как столбцы идентификаторов, используются свойства конфигурации, а также свойства навигации для связанных сущностей.

...