Costruttore di tipi denominati (Entity SQL)

Utilizzato per creare istanze di tipi nominali Entity Data Model (EDM), ad esempio tipi di entità o complessi.

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

Argomenti

  • identifier
    Valore che rappresenta un identificatore semplice o tra virgolette. Per ulteriori informazioni, vedere Identificatori (Entity SQL).
  • expression
    Attributi del tipo che si presuppone essere nello stesso ordine in cui appaiono nella dichiarazione del tipo.

Valore restituito

Istanze di tipi di entità e di tipi complessi denominati.

Osservazioni

Negli esempi seguenti viene illustrato come costruire i tipi nominali e complessi:

L'espressione seguente consente di creare un'istanza di un tipo Person:

Person("abc", 12)

L'espressione seguente consente di creare un'istanza di un tipo complesso:

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

L'espressione seguente consente di creare un'istanza di un tipo complesso nidificato:

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

L'espressione seguente consente di creare un'istanza di un'entità con un tipo complesso nidificato:

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

Nell'esempio seguente viene illustrato come inizializzare una proprietà di un tipo complesso impostandola su Null:MyModel.ZipCode(‘98118’, null).

Esempio

Nella query Entity SQL seguente viene utilizzato il costruttore di tipo denominato per creare un'istanza di un tipo EDM. La query è basata sul modello Sales di AdventureWorks. Per compilare ed eseguire questa query, effettuare le operazioni seguenti:

  1. Seguire la procedura indicata in Procedura: eseguire una query che restituisce risultati StructuralType (EntityClient).

  2. Passare la query seguente come argomento al metodo ExecuteStructuralTypeQuery:

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

L'output ottenuto eseguendo l'esempio è il seguente:

SalesOrderDetailID: 1
CarrierTrackingNumber: 4911-403C-98
OrderQty: 1
ProductID: 776
SalesOrderDetailID: 2
CarrierTrackingNumber: 4911-403C-98
OrderQty: 3
ProductID: 777
SalesOrderDetailID: 3
CarrierTrackingNumber: 4911-403C-98
OrderQty: 1
ProductID: 778
SalesOrderDetailID: 4
CarrierTrackingNumber: 4911-403C-98
OrderQty: 1
ProductID: 771
SalesOrderDetailID: 5
CarrierTrackingNumber: 4911-403C-98
OrderQty: 1
ProductID: 772
...

Vedere anche

Concetti

Operatori dei costruttori di tipo (Entity SQL)
Riferimenti a Entity SQL