TypeRef (Elemento) (CSDL)
El elemento TypeRef en el lenguaje de definición de esquemas conceptuales (CSDL) proporciona una referencia a un tipo con nombre existente. El elemento TypeRef puede ser un elemento secundario del elemento CollectionType, que permite especificar que una función tiene una colección como un parámetro o tipo de valor devuelto. Para obtener más información, vea Function (Elemento) (CSDL).
Un elemento TypeRef puede tener los elementos secundarios siguientes (en el orden mostrado):
Documentation (cero o un elemento)
Elementos Annotation (cero o más elementos)
Atributos aplicables
En la tabla siguiente se describen los atributos que se pueden aplicar al elemento TypeRef. Tenga en cuenta que los atributos DefaultValue, MaxLength, FixedLength, Precision, Scale, Unicode y Collation solo son aplicables a EDMSimpleTypes. Para obtener más información, vea Facetas (CSDL) y Tipos de modelos conceptuales.
Nombre de atributo | Es necesario | Valor |
---|---|---|
Type |
No |
El nombre del tipo al que se hace referencia. |
Nullable |
No |
True (el valor predeterminado) o False, dependiendo de si la propiedad puede tener un valor NULL.
Nota:
En la versión de CSDL indicada por el espacio de nombres https://schemas.microsoft.com/ado/2006/04/edm, una propiedad de tipo complejo debe tener
Nullable="False" .
|
DefaultValue |
No |
Valor predeterminado de la propiedad. |
MaxLength |
No |
Longitud máxima del valor de propiedad. |
FixedLength |
No |
True o False dependiendo de si el valor de propiedad se va a almacenar como una cadena de longitud fija. |
Precision |
No |
Precisión del valor de propiedad. |
Scale |
No |
Escala del valor de propiedad. |
Unicode |
No |
True o False dependiendo de si el valor de propiedad se va a almacenar como una cadena Unicode. |
Collation |
No |
Cadena que especifica la secuencia de intercalación que se va a usar en el origen de datos. |
Nota: |
---|
Se puede aplicar cualquier número de atributos de anotación (atributos XML personalizados) al elemento CollectionType.Sin embargo, es posible que los atributos personalizados no pertenezcan a ningún espacio de nombres XML reservado para CSDL.Dos atributos personalizados cualesquiera no pueden tener nombres completos idénticos. |
Ejemplo
El ejemplo siguiente muestra una función definida por modelo que utiliza el elemento TypeRef (como un elemento secundario de un elemento CollectionType) para especificar que la función acepta una colección de tipos de entidad 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>
Vea también
Conceptos
Información general de Entity Framework
Especificación CSDL
FunctionImport (Elemento) (CSDL)
Otros recursos
Especificaciones CSDL, SSDL y MSL
ADO.NET Entity Data Model Tools