Share via


Adlandırılmış Tür Oluşturucu (Entity SQL)

Varlık veya Karmaşık türler gibi kavramsal model nominal türlerinin örneklerini oluşturmak için kullanılır.

Söz dizimi

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

Bağımsız değişkenler

identifier
Basit veya tırnak içine alınmış bir tanımlayıcı olan değer. Daha fazla bilgi için bkz. Tanımlayıcılar

expression
Türün öznitelikleri, türün bildiriminde göründükleri sırada olduğu varsayılır.

Dönüş Değeri

Adlandırılmış karmaşık türlerin ve varlık türlerinin örnekleri.

Açıklamalar

Aşağıdaki örnekler, nominal ve karmaşık türlerin nasıl derlenip derleneceğini gösterir:

Aşağıdaki ifade türün bir Person örneğini oluşturur:

Person("abc", 12)

Aşağıdaki ifade karmaşık bir türün örneğini oluşturur:

MyModel.ZipCode('98118', '4567')

Aşağıdaki ifade iç içe yerleştirilmiş karmaşık türün bir örneğini oluşturur:

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

Aşağıdaki ifade, iç içe yerleştirilmiş karmaşık türe sahip bir varlığın örneğini oluşturur:

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

Aşağıdaki örnekte, karmaşık bir türün özelliğini null olarak başlatma gösterilmektedir:MyModel.ZipCode('98118', null)

Örnek

Aşağıdaki Entity SQL sorgusu, kavramsal model türünün bir örneğini oluşturmak için adlandırılmış tür oluşturucusunu kullanır. Sorgu AdventureWorks Satış Modeli'ni temel alır. Bu sorguyu derlemek ve çalıştırmak için şu adımları izleyin:

  1. Nasıl yapılır: StructuralType Sonuçları Döndüren Bir Sorgu Yürütme bölümündeki yordamı izleyin.

  2. Aşağıdaki sorguyu yöntemine ExecuteStructuralTypeQuery bağımsız değişken olarak geçirin:

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

Ayrıca bkz.