Share via


FunctionImport (Elemento) (CSDL)

El elemento FunctionImport del lenguaje de definición de esquemas conceptuales (CSDL) representa una función que está definida en el origen de datos, pero que está disponible para los objetos a través del modelo conceptual.Por ejemplo, un elemento Function del modelo de almacenamiento se puede usar para representar un procedimiento almacenado en una base de datos.Un elemento FunctionImport del modelo conceptual representa la función correspondiente de una aplicación de Entity Framework y se asigna a la función de modelo de almacenamiento usando el elemento FunctionImportMapping.Cuando se llama a la función en la aplicación, el procedimiento almacenado correspondiente se ejecuta en la base de datos.

Se puede generar un método de Common Language Runtime (CLR) para una aplicación de Entity Framework basándose en un elemento FunctionImport.Para obtener más información, vea Información general sobre el código generado (Entity Data Model Designer) y Cómo: Usar EdmGen.exe para generar código de nivel de objeto.

El elemento FunctionImport puede tener los elementos secundarios siguientes (en el orden mostrado):

Se debe definir un elemento Parameter para cada parámetro aceptado por la función.

Atributos aplicables

En la tabla siguiente se describen los atributos que se pueden aplicar al elemento FunctionImport.

Nombre de atributo

Es necesario

Valor

Name

Nombre de la función importada.

ReturnType

No

Tipo devuelto por la función.No use este atributo si la función no devuelve un valor.Si no, el valor debe ser una COLLECTION de RowType, ComplexType, EntityType o EDMSimpleType.

EntitySet

No

Si la función devuelve una colección de tipos de entidad, el valor de EntitySet debe ser el conjunto de entidades al que pertenece la colección.De lo contrario, no se debe usar el atributo EntitySet.

Nota

Se puede aplicar cualquier número de atributos de anotación (atributos XML personalizados) al elemento FunctionImport.Sin embargo, es posible que los atributos personalizados no pertenezcan a ningún espacio de nombres XML reservado para CSDL.Dos atributos personalizados cualesquiera no pueden tener nombres completos idénticos.

Ejemplo

En el ejemplo siguiente se muestra un elemento FunctionImport que acepta un parámetro y devuelve una colección de tipos de entidad:

<FunctionImport Name="GetStudentGrades" 
                EntitySet="StudentGrade" 
                ReturnType="Collection(SchoolModel.StudentGrade)">
       <Parameter Name="StudentID" Mode="In" Type="Int32" />
</FunctionImport>

Vea también

Tasks

Importar un procedimiento almacenado

Conceptos

Información general de Entity Framework

Especificación CSDL

EntityContainer (Elemento) (CSDL)

Otros recursos

Especificaciones CSDL, SSDL y MSL

Herramientas de ADO.NET Entity Data Model