ObjectQuery.GetResultType 方法


返回有关查询的结果类型的信息。Returns information about the result type of the query.

 System::Data::Metadata::Edm::TypeUsage ^ GetResultType();
public System.Data.Metadata.Edm.TypeUsage GetResultType ();
member this.GetResultType : unit -> System.Data.Metadata.Edm.TypeUsage
Public Function GetResultType () As TypeUsage


一个 TypeUsage 值,它包含有关查询的结果类型的信息。A TypeUsage value that contains information about the result type of the query.


此示例基于AdventureWorks 销售模型This example is based on the AdventureWorks Sales Model. 该示例创建一个类型为 ObjectQuery<T>DbDataRecord,使用 GetResultType 确定返回的类型是否表示行。The example creates an ObjectQuery<T> of type DbDataRecord and uses GetResultType to determine whether the type returned represents a row.

using (AdventureWorksEntities context =
    new AdventureWorksEntities())
    string queryString = @"SELECT VALUE product "
    + "FROM AdventureWorksEntities.Products AS product";
    ObjectQuery<DbDataRecord> query =
        new ObjectQuery<DbDataRecord>
            (queryString, context);

    TypeUsage type = query.GetResultType();
    if (type.EdmType is RowType)
        RowType row = type.EdmType as RowType;
        foreach (EdmProperty column in row.Properties)
            Console.WriteLine("{0}", column.Name);
Using context As New AdventureWorksEntities()
    Dim queryString As String = "SELECT VALUE product " & "FROM AdventureWorksEntities.Products AS product"
    Dim query As New ObjectQuery(Of DbDataRecord)(queryString, context)

    Dim type As TypeUsage = query.GetResultType()
    If TypeOf type.EdmType Is RowType Then
        Dim row As RowType = TryCast(type.EdmType, RowType)
        For Each column As EdmProperty In row.Properties
            Console.WriteLine("{0}", column.Name)
    End If
End Using