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


Элемент EntityContainer (язык SSDL)

Элемент EntityContainer, заданный на языке SSDL, представляет собой метаданные, описывающие контейнер, в котором хранятся данные приложений, построенных на основе модели Entity Data Model (EDM). Элемент EntityContainer обычно представляет собой базу данных в системе управления реляционной базой данных (СУРБД), например SQL Server.

Имя пространства имен SSDL-схемы и содержащиеся в нем элементы EntityContainer сопоставляются с соответствующим именем пространства имен схемы на языке CSDL и элементами EntityContainer, содержащимися в этом пространстве имен. В иерархии XML элемент EntityContainer отделен от элемента Schema несмотря на то, что элемент EntityContainer определен в схеме. Это важно при сопоставлении контейнера сущностей хранилищу. В файле сопоставления полное имя контейнера EntityContainer не включает в себя имя пространства имен схемы.

Дополнительные сведения о сопоставлении элемента EntityContainer см. в разделе Элемент EntityContainerMapping (язык MSL).

Синтаксис языка SSDL представляет собой метаданные, определяющие модель хранения, которая используется приложениями на базе модели EDM. Элемент EntityContainer, объявляемый в следующем примере, представляет собой объект базы данных. Каждый содержащийся в нем набор сущностей представляет собой таблицу в секции Human Resources базы данных Adventure Works. Следующая синтаксическая конструкция содержит наборы сущностей для сотрудников, отделов, адресов сотрудников, послужных списков сотрудников и т. п. Элемент HumanResourcesEntityContainer определяется как часть пространства имен AdventureWorksHRTarget. Каждое вхождение псевдонима Self будет расширено до этого пространства имен во время процесса построения.

  <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="FK_Employee_Employee_ManagerID"
        Association="Self.FK_Employee_Employee_ManagerID">
      <End Role="Employee" EntitySet="Employee" />
      <End Role="Employee1" EntitySet="Employee" />
    </AssociationSet>
    <AssociationSet Name="JobCandidate_Employee_EmployeeID"
             Association="Self.FK_JobCandidate_Employee_EmployeeID">
      <End Role="Employee" EntitySet="Employee" />
      <End Role="JobCandidate" EntitySet="JobCandidate" />
    </AssociationSet>
  </EntityContainer>

Дополнительные сведения о наборах сущностей и ассоциаций, определенных в данном контейнере EntityContainer, см. в следующих разделах:

Атрибут Name (EntityContainer, язык SSDL)

Элемент EntitySet (класс EntityContainer языка SSDL)

Элемент AssociationSet (EntityContainer, язык SSDL)

См. также

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

Наборы сущностей (модель EDM)
Наборы ассоциаций (модель EDM)
Элемент EntityContainerMapping (язык MSL)
Полная модель AdventureWorks (модель EDM)