EntityType 元素 (SSDL)

在 实体数据模型 (EDM) 中,存储架构定义语言 (SSDL) 中使用 EntityType 元素来定义有关 EDM 应用程序所使用的存储模型中的实体的元数据。

以下示例中的命名空间 AdventureWorksHRTarget 包含人力资源部门 Department 表的存储实体。以下 SSDL 架构摘录中声明和定义了 Department 实体的属性。

<?xml version="1.0" encoding="utf-8"?>
<Schema Namespace="AdventureWorksHRTarget" Alias="Self"
          xmlns="https://schemas.microsoft.com/ado/2006/04/edm/ssdl">

  <EntityType Name="Department" >
    <Key>
        <PropertyRef Name="DepartmentID">
    </Key>
    <Property Name="DepartmentID" Type="smallint" Nullable="false"
                                 StoreGeneratedPattern="Identity" />
    <Property Name="Name" Type="nvarchar" Nullable="false"
                                                   MaxLength="50" />
    <Property Name="GroupName" Type="nvarchar" Nullable="false"
                                                   MaxLength="50" />
    <Property Name="ModifiedDate" Type="datetime" Nullable="false" />
  </EntityType>

目标数据库中的 Department 实体指定了一个 Key 属性,该属性类似于概念性架构定义语言 (CSDL) 声明中的 Key 属性。存储模型架构中的实体也称为 Department。因为该数据库存储了 CSDL 架构中定义的实体实例,所以此实体要求在元数据中有一个与数据表中的主键相对应的 Key 属性。

在此 SSDL 架构中,Key 属性的数据类型为 smallint,这是一个 SQL Server 数据类型。CSDL 文件中的并行 Department 实体使用数据类型 Int16,这是由 EDM 定义的一个基元类型。

此存储实体中的 NameGroupName 属性的数据类型都是 nvarchar,该类型是变长 UNICODE 字符数组的 SQL Server 数据类型。SSDL 语法指示 MaxLength 为 50 个字符,这与数据库规范相对应。

在 CSDL 和 SSDL 中,属性 ModifiedDate 的类型都是 DateTime

另请参见

概念

EntityType 元素 (CSDL)
EntityTypeMapping 元素 (EntitySetMapping)
EntityContainerMapping 元素 (MSL)
AdventureWorks 完整模型 (EDM)
简单类型 (EDM)

其他资源

EDM 规范