Должен ли я использовать все таблицы в модели Entity Framework? - PullRequest
0 голосов
/ 23 ноября 2008

Я строю модель Entity Framework для подмножества базы данных Pubs от Microsoft. Меня интересуют только издатели и книги, а не издатели и сотрудники, но существует ограничение по внешнему ключу между таблицами издателей и emoloyees. Когда я удаляю сущность сотрудников из моей модели, модель не будет проверена из-за ограничения внешнего ключа.

Как создать модель для подмножества базы данных, если это подмножество связано с другими вкладками с ограничениями внешнего ключа?

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

Ответы [ 2 ]

0 голосов
/ 25 ноября 2008

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

0 голосов
/ 24 ноября 2008

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

До выпуска 3.5 SP1 мы создали DAL поверх LINQ to SQL (без отображений DBML, но это уже другая история), который отображал все объекты домена либо в хранимые процедуры, либо в представления. Таким образом, администратор базы данных был доволен вызовами, следовавшими более строгому плану выполнения, а также возможностью инкапсулировать логику базы данных вне кодовой базы.

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