FunctionImportMapping 元素 (MSL)
以映射规范语言 (MSL) 表示的 FunctionImportMapping 元素定义概念模型中的函数导入与基础数据库中的存储过程或函数之间的映射。 函数导入必须在概念模型中进行声明,存储的过程必须在存储模型中进行声明。 有关更多信息,请参见FunctionImport 元素 (CSDL)和Function 元素 (SSDL)。
注意: |
---|
默认情况下,如果函数导入返回概念模型实体类型或复杂类型,则基础存储过程返回的列名称必须与概念模型类型中的属性名称完全匹配。如果列名称与属性名称不完全匹配,则必须在 ResultMapping 元素中定义映射。 |
FunctionImportMapping 元素可以具有以下子元素:
- ResultMapping(零个或一个)
适用的特性
下表介绍适用于 FunctionImportMapping 元素的特性:
特性名称 | 是否必需 | 值 |
---|---|---|
FunctionImportName |
是 |
概念模型中要映射的函数导入的名称。 |
FunctionName |
是 |
存储模型中要映射的函数的命名空间限定名称。 |
示例
下面的示例基于 School 模型。 请考虑在存储模型中使用以下函数:
<Function Name="GetStudentGrades" Aggregate="false"
BuiltIn="false" NiladicFunction="false"
IsComposable="false" ParameterTypeSemantics="AllowImplicitConversion"
Schema="dbo">
<Parameter Name="StudentID" Type="int" Mode="In" />
</Function>
另请考虑在概念模型中使用此函数导入:
<FunctionImport Name="GetStudentGrades" EntitySet="StudentGrades"
ReturnType="Collection(SchoolModel.StudentGrade)">
<Parameter Name="StudentID" Mode="In" Type="Int32" />
</FunctionImport>
下面的示例演示了用于将上述函数与函数导入彼此映射的 FunctionImportMapping 元素:
<FunctionImportMapping FunctionImportName="GetStudentGrades"
FunctionName="SchoolModel.Store.GetStudentGrades" />
另请参见
其他资源
CSDL、SSDL 和 MSL 规范
建模和映射(实体框架)
How to: Import a Stored Procedure