命名类型构造函数 (Entity SQL)

用于创建概念模型名义类型(如实体或复杂类型)的实例。

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

参数

  • identifier
    作为简单标识符或带引号的标识符的值。 有关更多信息,请参见标识符 (Entity SQL)
  • expression
    类型的属性,假设这些属性的顺序与它们在类型声明中的顺序相同。

返回值

命名复杂类型和实体类型的实例。

备注

下面的示例演示如何构造名义类型和复杂类型:

下面的表达式创建 Person 类型的实例:

Person("abc", 12)

下面的表达式创建复杂类型的实例:

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

下面的表达式创建嵌套复杂类型的实例:

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

下面的表达式创建具有嵌套复杂类型的实体的实例:

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

下面的示例演示如何将复杂类型的属性初始化为 null:MyModel.ZipCode(‘98118’, null)

示例

下面的 Entity SQL 查询使用命名类型构造函数创建概念模型类型的实例。 此查询基于 AdventureWorks 销售模型。 若要编译并运行此查询,请执行下列步骤:

  1. 执行如何:执行返回 StructuralType 结果的查询 (EntityClient) 中的过程。

  2. 将以下查询作为参数传递给 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

另请参见

概念

构造类型 (Entity SQL)
Entity SQL 参考