如何:导入存储过程(实体数据模型工具)
本主题介绍如何使用 ADO.NET 实体数据模型设计器(实体设计器)来导入存储过程。
将存储过程添加到概念模型的操作称为函数导入。** 添加函数导入后,即可通过应用程序代码调用对应的存储过程。 函数导入可以返回简单类型、EntityTypes 或 ComplexTypes 的集合,也可以不返回任何值。
注意: |
---|
实体类型的插入、更新和删除操作可映射到存储过程。有关更多信息,请参见如何:将修改函数映射到存储过程(实体数据模型工具)。 |
当实体数据模型向导根据数据库生成 .edmx 文件时,它将在存储模型中针对数据库中的每一个存储过程创建对应的项。 创建函数导入后,对应项将添加到概念模型中。
下面的过程描述如何创建函数导入。 有关通过应用程序代码调用函数导入的信息,请参见How to Execute a Query Using a Stored Procedure和演练:使用存储过程检索实体类型(实体数据模型工具)。
创建函数导入
从**“模型浏览器”**中执行下列操作之一:
- 打开**“存储过程”**文件夹(在存储模型信息中),然后双击没有对应函数导入的存储过程。
- 或 -
- 右击**“函数导入”文件夹(在概念模型信息的“EntityContainer”节点中),然后选择“添加函数导入”**。
此时将出现**“添加函数导入”**对话框。
填入新函数导入的设置。
在**“存储过程名称”**字段中,指定要为其创建函数导入的存储过程。 此字段是一个下拉列表,其中显示存储模型中的所有存储过程。 如果所需的存储过程不可用,则可能需要更新存储模型。 有关更多信息,请参见如何:在数据库发生更改时更新 .edmx 文件(实体数据模型工具)。
在**“函数导入名称”**字段中指定函数导入的名称。
指定下列四种基本返回类型之一:“无”、“标量”、“复杂”或“实体”,然后从可用下拉列表中选择特定返回类型。 如果选择**“复杂”**,则实体设计器可以使用与存储过程返回的列相对应的属性创建新的复杂类型。
单击**“获取列信息”**可检索列信息。
单击**“创建新的复杂类型”**。
在**“复杂”**下拉列表中编辑复杂类型的名称。
单击**“确定”**后,新的复杂类型即会添加到概念模型,并将函数导入的返回类型设置为此新类型。
注意: 如果已经更改存储模型中存储过程的定义,则单击“更新”即可自动更新函数导入返回的复杂类型。
注意: 如果应用程序面向 .NET Framework 3.5 SP1,则不支持复杂类型作为函数导入的返回类型。 单击**“确定”**。
即在概念模型中创建 FunctionImport 项。 有关更多信息,请参见 FunctionImport Element (CSDL)。