Elemento Parameter (CSDL)
L'elemento Parameter in Conceptual Schema Definition Language (CSDL) può essere un elemento figlio dell'elemento FunctionImport o dell'elemento Function.
Applicazione dell'elemento FunctionImport
Un elemento Parameter (come un figlio dell'elemento FunctionImport ) viene utilizzato per definire parametri di input e di output per le importazioni di funzioni dichiarate in CSDL.
L'elemento Parameter può includere i seguenti elementi figlio (nell'ordine elencato):
Documentation (zero elementi o un elemento consentito)
Elementi Annotation (zero o più elementi consentiti)
Attributi applicabili
Nella tabella riportata di seguito vengono descritti gli attributi che è possibile applicare all'elemento Parameter.
Nome attributo |
È obbligatorio |
Valore |
---|---|---|
Name |
Sì |
Nome del parametro. |
Type |
Sì |
Tipo del parametro.Il valore deve essere un EDMSimpleType o un tipo complesso che si trova nell'ambito del modello.Per ulteriori informazioni, vedere Tipi del modello concettuale (CSDL). |
Mode |
No |
In, Out o InOut a seconda che il parametro sia un parametro di input, di output o di input/output. |
MaxLength |
No |
Lunghezza massima consentita del parametro. |
Precision |
No |
Precisione del parametro. |
Scale |
No |
Scala del parametro. |
Nota
È possibile applicare un qualsiasi numero di attributi di annotazione (attributi XML personalizzati) all'elemento Parameter.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 riportato di seguito viene mostrato un elemento FunctionImport con un elemento Parameter figlio.La funzione accetta un parametro di input 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>
Applicazione dell'elemento Function
Un elemento Parameter (come un figlio dell'elemento Function ) definisce i parametri per funzioni che sono definite o dichiarate in un modello concettuale.
L'elemento Parameter può includere i seguenti elementi figlio (nell'ordine elencato):
Documentation (zero o un elemento)
CollectionType (zero o un elemento)
ReferenceType (zero o un elemento)
RowType (zero o un elemento)
Nota
Solo uno degli elementi CollectionType, ReferenceType o RowType può essere un elemento figlio di un elemento Property.
- Elementi Annotation (zero o più elementi consentiti)
Nota
Gli elementi Annotation devono apparire dopo tutti gli altri elementi figlio.L'utilizzo di elementi Annotation è consentito solo in modelli concettuali per applicazioni che sono destinate a .NET Framework versione 4 o successive.Lo spazio dei nomi XML per tali modelli è https://schemas.microsoft.com/ado/2008/09/edm.
Attributi applicabili
Nella tabella riportata di seguito vengono descritti gli attributi che è possibile applicare all'elemento Parameter.
Nome attributo |
È obbligatorio |
Valore |
---|---|---|
Name |
Sì |
Nome del parametro. |
Type |
No |
Tipo del parametro.Un parametro può essere uno qualsiasi dei seguenti tipi (o raccolte di questi tipi):
Per ulteriori informazioni su questi tipi, vedere Tipi del modello concettuale (CSDL). |
Nullable |
No |
True (valore predefinito) o False a seconda che la proprietà possa disporre o meno del valore null. |
DefaultValue |
No |
Valore predefinito della proprietà. |
MaxLength |
No |
Lunghezza massima del valore della proprietà. |
FixedLength |
No |
True o False a seconda che il valore della proprietà sia archiviato o meno come una stringa a lunghezza fissa. |
Precision |
No |
Precisione del valore della proprietà. |
Scale |
No |
Scala del valore della proprietà. |
Unicode |
No |
True o False a seconda che il valore della proprietà sia archiviato o meno come una stringa Unicode. |
Collation |
No |
Stringa che specifica la sequenza di confronto da utilizzare nell'origine dati. |
Nota
È possibile applicare un qualsiasi numero di attributi di annotazione (attributi XML personalizzati) all'elemento Parameter.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 Function che utilizza un elemento figlio Parameter per definire un parametro della funzione.
<Function Name="GetYearsEmployed" ReturnType="Edm.Int32">
<Parameter Name="Instructor" Type="SchoolModel.Person" />
<DefiningExpression>
Year(CurrentDateTime()) - Year(cast(Instructor.HireDate as DateTime))
</DefiningExpression>
</Function>
Vedere anche
Attivitá
Procedura: importare una stored procedure
Procedura: definire funzioni personalizzate nel modello concettuale
Concetti
Panoramica su Entity Framework
Elemento EntityContainer (CSDL)