实体类型

实体类型是描述实体数据模型(EDM)数据结构的基本构建基块。 在概念模型中,实体类型表示顶级概念的结构,例如客户或订单。 实体类型是实体类型实例的模板。 每个模板都包含以下信息:

  • 唯一的名称。 (必需。

  • 由一个或多个属性定义的 实体键 。 (必需。

  • 采用属性形式的数据。 (可选)。)

  • 允许从关联一端导航到另一导航属性。 (可选)

在应用程序中,实体类型的实例表示特定对象(例如特定客户或订单)。 每个实体类型的实例在实体集中必须具有唯一的实体键

仅当两个实体类型实例的类型相同且实体键的值相同时,两个实体类型实例才被视为相等。

示例:

下图显示了一个概念模型,其中包含三种实体类型: BookPublisherAuthor

具有三种实体类型的示例模型

请注意,构成实体键的每个实体类型的属性都用“(Key)”表示。

ADO.NET Entity Framework 使用称为概念架构定义语言(CSDL)的特定于域的语言(DSL)来定义概念模型。 以下 CSDL 定义 Book 上图中显示的实体类型:

<EntityType Name="Book">
  <Key>
    <PropertyRef Name="ISBN" />
  </Key>
  <Property Type="String" Name="ISBN" Nullable="false" />
  <Property Type="String" Name="Title" Nullable="false" />
  <Property Type="Decimal" Name="Revision" Nullable="false" Precision="29" Scale="29" />
  <NavigationProperty Name="Publisher" Relationship="BooksModel.PublishedBy"
                      FromRole="Book" ToRole="Publisher" />
  <NavigationProperty Name="Authors" Relationship="BooksModel.WrittenBy"
                      FromRole="Book" ToRole="Author" />
</EntityType>

另请参阅