Поделиться через


Общие сведения об иерархии типов метаданных

Иерархия типов метаданных ADO.NET предоставляет набор типов .NET Framework для представления тех же концепций, которые определены в модели Entity Data Model (EDM) для приложения Entity Framework. Дополнительные сведения о приложении Entity Framework и модели EDM см. в разделах ADO.NET Entity Framework, платформа и Модель EDM.

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

Компонент ADO.NET имеет пространство имен System.Data.Metadata.Edm для управления службами Metadata Services для приложения Entity Framework. Следующая схема иллюстрирует иерархию типов, поддерживаемую пространством имен System.Data.Metadata.Edm.

Иерархия типов метаданных ADO.NET

Класс MetadataItem — это класс высшего уровня, который является базовым классом для всех классов в иерархии типов метаданных ADO.NET. Класс EdmType является базовым классом для классов, которые представляют типы в модели EDM. Тип StructuralType — это базовый тип для всех типов в иерархии типов метаданных, которые обладают элементами. Дополнительные сведения о типах в иерархии типов метаданных см. в разделе Типы (метаданные). Образец кода в классе GlobalItem демонстрирует процедуру просмотра типов в иерархии типов метаданных. Дополнительные сведения о типах в модели EDM см. в разделе Типы модели EDM.

Помимо упомянутых ранее типов, пространство имен System.Data.Metadata.Edm имеет некоторые другие классы для представления других важных концепций в модели, используемой приложением Entity Framework, например контейнеров сущностей, наборов сущностей, наборов ассоциаций и функций.

В модели EDM объект EntityContainer представляет логическое группирование наборов сущностей и наборов ассоциаций. Объект EntitySet представляет логический контейнер для сущностей одного типа. Точно так же объект AssociationSet представляет контейнер для ассоциаций одного типа.

Образец кода в классе EntityContainer демонстрирует, как получать информацию о контейнерах и наборах сущностей. Дополнительные сведения о том, как в модели EDM используются контейнеры сущностей, наборы сущностей и наборы ассоциаций, см. в разделах Контейнеры сущностей (модель EDM), Наборы сущностей (модель EDM) и Наборы ассоциаций (модель EDM).

Каждый поставщик хранения или база данных может содержать много встроенных и определяемых пользователем функций. Приложение Entity Framework имеет канонические функции для отображения наиболее часто используемых встроенных функций. Если в запросе Entity SQL используются канонические функции, в поставщике хранения вызывается соответствующая функция. В подразделе Функции и параметры функций (метаданные) разъясняется, как получать информацию о канонических функциях, определенных в приложении Entity Framework, а также о функциях для конкретного хранилища, определенных в базовом поставщике хранения.

См. также

Основные понятия

Иерархия типов метаданных
Таксономия типов модели EDM