Function 元素 (SSDL)
以存储架构定义语言 (SSDL) 表示的 Function 元素指定基础数据库中存在的某个存储过程。
Function 元素可以具有以下子元素(按所列顺序):
Documentation(零个或一个)
CommandText(零个或一个)
Parameter(零个或多个)
批注元素(零个或多个)
可以将在存储模型中指定的存储过程导入应用程序的概念模型。 有关更多信息,请参见How to: Import a Stored Procedure。 Function 元素还可用于在存储模型中定义自定义函数。 有关更多信息,请参见How to: Define Custom Functions in the Storage Model。
适用的特性
下表介绍可应用于 Function 元素的特性。
注意: |
---|
某些特性(未在此处列出)可能使用 store 别名(它是 https://schemas.microsoft.com/ado/2007/12/edm/EntityStoreSchemaGenerator 命名空间的别名)进行了限定。在更新模型时,模型更新向导会使用这些特性。 |
特性名称 | 是否必需 | 值 |
---|---|---|
Name |
是 |
存储过程的名称。 |
ReturnType |
否 |
存储过程的返回类型。 |
Aggregate |
否 |
如果存储过程返回一个聚合值,则值为 True;否则,值为 False。 |
BuiltIn |
否 |
如果该函数为内置1函数,则值为 True;否则,值为 False。 |
StoreFunctionName |
否 |
存储过程的名称。 |
NiladicFunction |
否 |
如果该函数为 niladic2 函数,则值为 True;否则,值为 False。 |
IsComposable |
否 |
如果该函数为可组合3函数,则值为 True;否则,值为 False。 |
ParameterTypeSemantics |
否 |
定义用于解析函数重载的类型语义的枚举。 该枚举是在提供程序清单中根据函数定义来定义的。 默认值为 AllowImplicitConversion。 |
Schema |
否 |
在其中定义存储过程的架构的名称。 |
1 内置函数为在数据库中定义的函数。 有关在存储模型中定义的函数的信息,请参见 CommandText 元素 (SSDL)。
2 niladic 函数是不接受任何参数,且在调用时不需要使用括号的函数。
3 如果一个函数的输出可以作为另一个函数的输入,则这两个函数是可组合的。
注意: |
---|
可以将任何数量的批注特性(自定义 XML 特性)应用于 Function 元素。然而,自定义特性可能不属于为 SSDL 保留的任何 XML 命名空间。任何两个自定义特性的完全限定名称都不能相同。 |
示例
下面的示例演示了一个对应于 UpdateOrderQuantity 存储过程的 Function 元素。 该存储过程接受两个参数,且不返回值。
<Function Name="UpdateOrderQuantity"
Aggregate="false"
BuiltIn="false"
NiladicFunction="false"
IsComposable="false"
ParameterTypeSemantics="AllowImplicitConversion"
Schema="dbo">
<Parameter Name="orderId" Type="int" Mode="In" />
<Parameter Name="newQuantity" Type="int" Mode="In" />
</Function>
另请参见
概念
实体框架概述
SSDL 规范
CommandText 元素 (SSDL)