Elemento FunctionImport (CSDL)
L'elemento FunctionImport in Conceptual Schema Definition Language (CSDL) rappresenta una funzione definita nell'origine dati ma disponibile a oggetti tramite il modello concettuale.Ad esempio, è possibile utilizzare un elemento Function nel modello di archiviazione per rappresentare una stored procedure in un database.Un elemento FunctionImport nel modello concettuale rappresenta la funzione corrispondente in un'applicazione Entity Framework ed è mappato alla funzione del modello di archiviazione tramite l'utilizzo dell'elemento FunctionImportMapping.Quando la funzione viene chiamata nell'applicazione, la stored procedure corrispondente viene eseguita nel database.
È possibile generare un metodo CLR (Common Language Runtime) per un'applicazione Entity Framework basandosi su un elemento FunctionImport.Per ulteriori informazioni, vedere Cenni preliminari sul codice generato (Entity Data Model Designer) e Procedura: utilizzare EdmGen.exe per generare codice del livello oggetti.
L'elemento FunctionImport può includere i seguenti elementi figlio (nell'ordine elencato):
Documentation (zero elementi o un elemento consentito)
Parameter (zero o più elementi consentiti)
Elementi Annotation (zero o più elementi consentiti)
Un solo elemento Parameter deve essere definito per ogni parametro che la funzione accetta.
Attributi applicabili
Nella tabella riportata di seguito vengono descritti gli attributi che è possibile applicare all'elemento FunctionImport.
Nome attributo |
È obbligatorio |
Valore |
---|---|---|
Name |
Sì |
Nome della funzione importata. |
ReturnType |
No |
Tipo restituito dalla funzione.Non utilizzare questo attributo se la funzione non restituisce un valore.In caso contrario, il valore deve essere un oggetto COLLECTION di RowType, ComplexType, EntityType o EDMSimpleType. |
EntitySet |
No |
Se la funzione restituisce una raccolta di tipi di entità, il valore di EntitySet deve essere il set di entità al quale appartiene la raccolta.In caso contrario, l'attributo EntitySet non deve essere utilizzato. |
Nota
È possibile applicare un qualsiasi numero di attributi di annotazione (attributi XML personalizzati) all'elemento FunctionImport.Tuttavia, gli attributi personalizzati non possono appartenere ad alcuno spazio dei nomi XML riservato a CSDL.I nomi completi per due attributi personalizzati qualsiasi non possono essere uguali.
Esempio
Nell'esempio seguente viene mostrato un elemento FunctionImport che accetta un parametro e restituisce una raccolta di tipi di entità:
<FunctionImport Name="GetStudentGrades"
EntitySet="StudentGrade"
ReturnType="Collection(SchoolModel.StudentGrade)">
<Parameter Name="StudentID" Mode="In" Type="Int32" />
</FunctionImport>
Vedere anche
Attivitá
Procedura: importare una stored procedure
Concetti
Panoramica su Entity Framework
Elemento EntityContainer (CSDL)