Elemento Function (CSDL)
L'elemento Function in Conceptual Schema Definition Language (CSDL) viene utilizzato per definire o dichiarare funzioni nel modello concettuale.Un funzione viene definita utilizzando un elemento DefiningExpression.Per ulteriori informazioni, vedere Procedura: definire funzioni personalizzate nel modello concettuale.
Un elemento Function può includere i seguenti elementi figlio (nell'ordine elencato):
Documentation (zero o un elemento)
Parameter (zero o più elementi)
DefiningExpression (zero o un elemento)
ReturnType (zero o un elemento)
Elementi Annotation (zero o più elementi)
Un tipo restituito per una funzione deve essere specificato o con l'elemento ReturnType o con l'attributo ReturnType (vedere più avanti), ma non con entrambi.I tipi restituiti possibili sono il edmSimpleType, il tipo di entità, il tipo complesso, il tipo di riga o il tipo di riferimento o una raccolta di uno di questi tipi.Per ulteriori informazioni, vedere Tipi del modello concettuale (CSDL).
Attributi applicabili
Nella tabella riportata di seguito vengono descritti gli attributi che è possibile applicare all'elemento Function.
Nome attributo |
È obbligatorio |
Valore |
---|---|---|
Name |
Sì |
Nome della funzione. |
ReturnType |
No |
Tipo restituito dalla funzione. |
Nota
È possibile applicare un qualsiasi numero di attributi di annotazione (attributi XML personalizzati) all'elemento Function.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 utilizzato un elemento Function per definire una funzione che restituisce il numero di anni di servizio di un docente.
<Function Name="YearsSinceNow" ReturnType="Edm.Int32">
<Parameter Name="date" Type="Edm.DateTime" />
<DefiningExpression>
Year(CurrentDateTime()) - Year(date)
</DefiningExpression>
</Function>
<Function Name="YearsSince" ReturnType="Edm.Int32">
<Parameter Name="date" Type="Edm.DateTime" />
<DefiningExpression>
Year(CurrentDateTime()) - Year(date)
</DefiningExpression>
</Function>
Vedere anche
Concetti
Panoramica su Entity Framework
Elemento FunctionImport (CSDL)