При создании Entity Framework отсутствует объект - PullRequest
10 голосов
/ 18 января 2012

Я пытаюсь сгенерировать свои сущности из моей базы данных SQL, используя элемент модели данных сущности ADO.NET, а оттуда - с помощью ADO.NET DbContext Generator.Когда я генерирую свой edmx из базы данных, кажется, что одна из моих сущностей отсутствует в конструкторе, но когда я смотрю на код позади edmx, я вижу его в коде, и когда я генерирую dbContext, сущность вообще не генерируется...

Буду признателен за любой совет!

1 Ответ

15 голосов
/ 18 января 2012

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

EF внутренне управляет таблицей соединений и не представляет ее как сущность. У вас есть только «левый» и «правый» объект с коллекциями навигации, указывающими друг на друга. Если вы добавляете или удаляете связь, добавляя или удаляя элементы в эти коллекции, EF создаст правильные операторы INSERT и DELETE для таблицы соединения при вызове SaveChanges. Но это происходит внутри и полностью скрыто от вас.

Другими словами: все в порядке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...