Condividi tramite


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):

Attributi applicabili

Nella tabella riportata di seguito vengono descritti gli attributi che è possibile applicare all'elemento Parameter.

Nome attributo

È obbligatorio

Valore

Name

Nome del parametro.

Type

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):

Nota

Solo uno degli elementi CollectionType, ReferenceType o RowType può essere un elemento figlio di un elemento Property.

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

Nome del parametro.

Type

No

Tipo del parametro.Un parametro può essere uno qualsiasi dei seguenti tipi (o raccolte di questi tipi):

  • EdmSimpleType

  • tipo di entità

  • tipo complesso

  • tipo di riga

  • tipo di riferimento

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

Specifiche CSDL

Elemento EntityContainer (CSDL)

Altre risorse

Specifiche CSDL, SSDL e MSL

Strumenti di ADO.NET Entity Data Model