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. De lo contrario, el valor debe ser un EDMSimpleType, un tipo de entidad, un tipo complejo o una colección de tipos de entidad o tipos complejos que se encuentre dentro del ámbito del modelo.

Cc716710.note(es-es,VS.100).gifNota:
En un modelo conceptual para una aplicación destinada a la versión 3.5 SP1 de .NET Framework, el tipo de valor devuelto debe ser una colección de EDMSimpleTypes o de tipos de entidad.

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.

Cc716710.note(es-es,VS.100).gifNota:
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

Conceptos

Información general de Entity Framework
Especificación CSDL
EntityContainer (Elemento) (CSDL)

Otros recursos

Especificaciones CSDL, SSDL y MSL
ADO.NET Entity Data Model Tools
How to: Import a Stored Procedure