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):
Documentation (zero o un elemento)
Elementi Annotation (zero o più elementi)
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.
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.
Nota:
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)