Нужно ли включать все поля в мою модель структуры сущностей - PullRequest
0 голосов
/ 23 апреля 2010

Быстрый вопрос для всех:

Нужно ли включать все поля таблицы базы данных в мою модель EF?

Например;Я создал подмодель, которая имеет дело только с tblPayment и связанными таблицами.Теперь мне нужно написать запрос LINQ, чтобы получить некоторую информацию об элементах.Обычно я получаю это, соединяя tblPayment с tblInvoice с tblInvoiceItem и, наконец, с tblOrderItem.

Мне интересно, нужно ли мне при добавлении в эти другие таблицы включать все поля для tblInvoice и tblInvoiceItem?В идеале;Я просто хотел бы сохранить поля, к которым нужно было бы присоединиться, поскольку это ограничило бы возможность разрыва моей подмодели при изменении / удалении других полей в этих таблицах.

Могу ли я сделать это

Ответы [ 3 ]

1 голос
/ 23 апреля 2010

Нет, вам не нужно включать их все.

Тем не менее, инструмент отображения графического интерфейса при обратном инжиниринге существующей БД в модель EF всегда будет включать все столбцы, и нет способа сказать, что это не так.

Поэтому, чтобы исключить столбцы, необходимо выполнить одно из следующих действий:

  • Вручную отредактируйте EDMX самостоятельно. Простое удаление столбцов в конструкторе графического интерфейса может работать, но удаляет только столбцы из CSDL, а не SSDL. EF может или не может позволить вам сделать это, в зависимости от сопоставления SSDL столбца.
  • Создание модели из другой БД, которая имеет аналогичную схему за исключением того, что в ней отсутствуют эти поля.
  • Сначала код или модель (только EF 4).
0 голосов
/ 23 апреля 2010

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

0 голосов
/ 23 апреля 2010

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

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