Элемент EntityContainer (язык CSDL)
Контейнер EntityContainer, определенный на языке CSDL, представляет собой спецификацию для класса в модели объектов, созданной на основе модели Entity Data Model (модель EDM). Контейнер EntityContainer управляет тем, какую область определения имеют сущности и ассоциации в определяемой модели объектов. Эти сущности и ассоциации определяются в схемах вначале отдельно, а затем как элементы наборов EntitySet и AssociationSet в определении EntityContainer.
В иерархии XML элемент EntityContainer отделен от элемента Schema несмотря на то, что элемент EntityContainer определен в схеме. Это важно при сопоставлении контейнера EntityContainer с хранилищем. Элементы EntityContainer сопоставлены в концептуальной схеме с соответствующими элементами EntityContainer в метаданных хранилища. Обратите внимание, что в файле сопоставления полное имя элемента EntityContainer не включает имя пространства имен схемы.
Дополнительные сведения о сопоставлении EntityContainer см. в разделе Элемент EntityContainerMapping (язык MSL).
Наборы сущностей и ассоциаций
Контейнер EntityContainer для примера схемы Adventure Works Human Resources определяет наборы сущностей для сотрудников, отделов, адресов сотрудников, анкет сотрудников и т. д. В следующем примере, в частности, рассматриваются декларации и определения в синтаксисе языка CSDL для набора HumanResourcesEntityContainer, определенного как часть пространства имен AdventureWorksHRModel.
<EntityContainer Name="HumanResources">
<EntitySet Name="Department" EntityType="Self.Department" />
<EntitySet Name="Employee" EntityType="Self.Employee" />
<EntitySet Name="EmployeeAddress" EntityType="Self.EmployeeAddress" />
<EntitySet Name="EmployeeDepartmentHistory"
EntityType="Self.EmployeeDepartmentHistory" />
<EntitySet Name="EmployeePayHistory"
EntityType="Self.EmployeePayHistory" />
<EntitySet Name="JobCandidate" EntityType="Self.JobCandidate" />
<EntitySet Name="Shift" EntityType="Self.Shift" />
<AssociationSet Name="Employee_Employee_ManagerID"
Association="Self.Employee_Employee_ManagerID">
<End Role="Employee" EntitySet="Employee" />
<End Role="EmployeeManager" EntitySet="Employee" />
</AssociationSet>
<AssociationSet Name="JobCandidate_Employee_EmployeeID"
Association="Self.JobCandidate_Employee_EmployeeID">
<End Role="Employee" EntitySet="Employee" />
<End Role="JobCandidate" EntitySet="JobCandidate" />
</AssociationSet>
</EntityContainer>
Дополнительные сведения о наборах сущностей и наборах ассоциаций, определенных в EntityContainer, см. в следующих разделах:
Атрибут Name (EntityContainer, язык CSDL)
Элемент EntitySet (EntityContainer, язык CSDL)
Элемент AssociationSet (EntityContainer, язык CSDL)
См. также
Основные понятия
Атрибут Name (EntityContainer, язык CSDL)
Наборы сущностей (модель EDM)
Наборы ассоциаций (модель EDM)
Элемент EntityContainerMapping (язык MSL)
Полная модель AdventureWorks (модель EDM)