Можно ли сопоставить произвольные запросы SQL с полями Entity Framework? - PullRequest
1 голос
/ 19 марта 2012

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

Для надуманного примера (примечание: это не то, что я на самом деле пытаюсь сделать, просто более простой пример объяснения того, чего я пытаюсь достичь). Я хочу, чтобы в моем классе было поле TableCount, которое содержит результат SELECT COUNT(*) FROM MyTable в момент загрузки объекта из базы данных.

РЕДАКТИРОВАТЬ: Я должен был упомянуть об этом в моем исходном сообщении, но я использую классы POCO.

1 Ответ

1 голос
/ 19 марта 2012

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

  • Создатьпредставление базы данных и отображение этого представления - это полностью автоматический способ, поддерживаемый дизайнером EDMX для вас
  • Написать запрос для заполнения всего нового типа объекта и отобразить его вручную в DefiningQuery.Недостатком является то, что требуется ручное редактирование EDMX и без дополнительного (коммерческого) инструмента, а также ручное обслуживание EDMX, потому что стандартный VS EDMX Designer перезаписывает отредактированную часть SSDL каждый раз, когда вы выбираете обновление из базы данных.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...