Элемент DefiningQuery (EntityContainer, язык SSDL)
Элемент DefiningQuery в коде на языке SSDL определяет запрос, который сопоставляется с представлениями хранилища данных через клиентскую проекцию в модели EDM. Такие сопоставления допускают только чтение. Если не применяется клиентская проекция, то пользователям приходится задавать сопоставления для всех столбцов представления хранилища и обеспечивать настройку фиктивного обновления.
Для формирования применяемой по умолчанию модели EDM используется узкая проекция системных представлений. Определяющий запрос допускает только чтение. В Средства работы с моделью EDM используются артефакты сопоставления для запуска потока операций.
В следующем синтаксисе SSDL показана декларация EntitySet, за которым следует элемент DefiningQuery, содержащий запрос, применяемый для получения представления.
<Schema>
<EntitySet Name="Tables" EntityType="Self.STable">
<DefiningQuery>
SELECT TABLE_CATALOG,
'test' as TABLE_SCHEMA,
TABLE_NAME
FROM INFORMATION_SCHEMA.TABLES
</DefiningQuery>
</EntitySet>
</Schema>
Поддержка хранимых процедур в инфраструктуре Entity Framework ADO.NET может использоваться для осуществления сценариев чтения и записи применительно к произвольным представлениям, о которых пользователю известно, как их обновлять. В качестве базовой таблицы для выборки данных и обработки изменений с помощью хранимых процедур может использоваться представление хранилища или представление Entity SQL.
См. также
Основные понятия
Наборы сущностей (модель EDM)
Компоненты платформы Entity Framework