Condividi tramite


Elemento TypeRef (CSDL)

L'elemento TypeRef in Conceptual Schema Definition Language (CSDL) fornisce un riferimento a un tipo con nome esistente.L'elemento TypeRef può essere un figlio dell'elemento CollectionType, che viene utilizzato per specificare che una funzione dispone di una raccolta come un parametro o un tipo restituito.Per ulteriori informazioni, vedere Elemento Function (CSDL).

Un elemento TypeRef 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 TypeRef.Si noti che gli attributi DefaultValue, MaxLength, FixedLength, Precision, Scale, Unicode e Collation sono applicabili solo a EDMSimpleTypes.Per ulteriori informazioni, vedere Facet (CSDL) e Tipi del modello concettuale (CSDL).

Nome attributo

È obbligatorio

Valore

Type

No

Nome del tipo a cui si fa riferimento.

Nullable

No

True (valore predefinito) o False a seconda che la proprietà possa disporre o meno del valore null.

NotaNota
Nella versione di CSDL indicata dallo spazio dei nomi https://schemas.microsoft.com/ado/2006/04/edm, una proprietà del tipo complesso deve avere il valore Nullable="False".

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 CollectionType.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 mostrata una funzione definita dal modello che utilizza l'elemento TypeRef (come un figlio di un elemento CollectionType) per specificare che la funzione accetta una raccolta di tipi di entità Department.

<Function Name="GetAvgBudget">
     <Parameter Name="Departments">
         <CollectionType>
            <TypeRef Type="SchoolModel.Department"/>
         </CollectionType>
          </Parameter>
      <ReturnType Type="Collection(Edm.Decimal)"/>
      <DefiningExpression>
            SELECT VALUE AVG(d.Budget) FROM Departments AS d
      </DefiningExpression>
</Function>

Vedere anche

Concetti

Panoramica su Entity Framework

Specifiche CSDL

Elemento FunctionImport (CSDL)

Altre risorse

Specifiche CSDL, SSDL e MSL

Strumenti di ADO.NET Entity Data Model