ADO.NET Entity Framework CSDL、SSDL 和 MSL 规范
概念架构定义语言 (CSDL)、存储架构定义语言 (SSDL) 和映射规范语言 (MSL) 都是基于 XML 的语言,它们分别描述概念模型、存储模型和这些模型之间的映射。在实体框架应用程序中,模型和映射元数据加载自三个文件扩展名分别为 .csdl、.ssdl 和 .msl 的文件。.csdl 和 .ssdl 文件中包含的元数据加载到 System.Data.Metadata.Edm ..::..EdmItemCollection 和 System.Data.Metadata.Edm ..::..StoreItemCollection 类的实例中,可使用 System.Data.Metadata.Edm ..::..MetadataWorkspace 类中的方法进行访问。 映射信息不可公开访问。实体框架使用这些类型的元数据将针对概念模型的查询转换为特定于数据源的命令。
说明: |
---|
实体数据模型设计器(实体设计器)在设计时将存储模型和映射信息存储在 .edmx 文件中。 在生成时,实体设计器使用 .edmx 文件中的信息创建实体框架在运行时需要的 .csdl、.ssdl 和 .msl 文件。有关更多信息,请参见 .edmx 文件概述。 |
可以在 Visual Studio 安装目录(通常为 C:\Program Files\Microsoft Visual Studio 10.0\Xml\Schemas)下的 XML\Schemas 文件夹中找到 .csdl、.ssdl、.msl 和 .edmx 文件的 XML 架构。针对 .NET Framework 版本 4 的应用程序的架构在以下文件中定义:
-
.csdl:System.Data.Resources.CSDLSchema_2.xsd
-
.ssdl:System.Data.Resources.SSDLSchema_2.xsd
-
.msl:System.Data.Resources.CSMSL_2.xsd
-
.edmx:Microsoft.Data.Entity.Design.Edmx_2.xsd
针对 .NET Framework 版本 3.5 SP1 的应用程序的架构在以下文件中定义:
-
.csdl:System.Data.Resources.CSDLSchema_1.xsd
-
.ssdl:System.Data.Resources.SSDLSchema.xsd
-
.msl:System.Data.Resources.CSMSL_1.xsd
-
.edmx:Microsoft.Data.Entity.Design.Edmx_1.xsd
本节中的主题提供有关 CSDL、SSDL 和 MSL 的详细信息,以及演示如何使用这些规范完成特定任务的示例。