Compartir a través de


Constructor de tipos con nombre (Entity SQL)

Se usa para crear instancias de los tipos nominales del modelo conceptual como los tipos de entidad o los tipos complejos.

[{identifier.  }] identifier( [expression [{, expression }]] )  

Argumentos

  • identifier
    Valor que es un identificador simple o incluido entre comillas. Para obtener más información, vea Identificadores (Entity SQL).
  • expression
    Atributos del tipo que se suponen que conservan el mismo orden que cuando aparecen en la declaración del tipo.

Valor devuelto

Instancias de tipos complejos con nombre y de tipos de entidad.

Notas

En los ejemplos siguientes se muestra cómo crear tipos nominales y complejos:

La expresión siguiente crea una instancia de un tipo Person:

Person("abc", 12)

La expresión siguiente crea una instancia de un tipo complejo:

MyModel.ZipCode(‘98118’, ‘4567’)

La expresión siguiente crea una instancia de un tipo complejo anidado:

MyModel.AddressInfo('My street address', 'Seattle', 'WA', MyModel.ZipCode('98118', '4567'))

La expresión siguiente crea una instancia de una entidad con un tipo complejo anidado:

MyModel.Person("Bill", MyModel.AddressInfo('My street address', 'Seattle', 'WA', MyModel.ZipCode('98118', '4567')))

En el ejemplo siguiente se muestra cómo inicializar una propiedad de un tipo complejo en NULL:MyModel.ZipCode(‘98118’, null)

Ejemplo

La consulta de Entity SQL siguiente usa el constructor de tipos con nombre para crear una instancia de un tipo del modelo conceptual. La consulta se basa en el modelo AdventureWorks Sales. Para compilar y ejecutar esta consulta, siga estos pasos:

  1. Siga el procedimiento de Cómo: Ejecutar una consulta que devuelve resultados StructuralType (EntityClient).

  2. Pase la consulta siguiente como argumento al método ExecuteStructuralTypeQuery:

SELECT VALUE AdventureWorksModel.SalesOrderDetail
    (o.SalesOrderID, o.SalesOrderDetailID, o.CarrierTrackingNumber,
    o.OrderQty, o.ProductID, o.SpecialOfferID, o.UnitPrice,
    o.UnitPriceDiscount, o.LineTotal, o.rowguid, o.ModifiedDate)
    FROM AdventureWorksEntities.SalesOrderDetails AS o

Vea también

Conceptos

Tipos de constructores (Entity SQL)
Referencia de Entity SQL