ObjectQuery<T>.Select(String, ObjectParameter[]) Metoda

Definicja

Ogranicza wyniki zapytania tylko do właściwości, które są zdefiniowane w określonym projekcji.Limits the query results to only the properties that are defined in the specified projection.

public:
 System::Data::Objects::ObjectQuery<System::Data::Common::DbDataRecord ^> ^ Select(System::String ^ projection, ... cli::array <System::Data::Objects::ObjectParameter ^> ^ parameters);
public System.Data.Objects.ObjectQuery<System.Data.Common.DbDataRecord> Select (string projection, params System.Data.Objects.ObjectParameter[] parameters);
member this.Select : string * System.Data.Objects.ObjectParameter[] -> System.Data.Objects.ObjectQuery<System.Data.Common.DbDataRecord>
Public Function Select (projection As String, ParamArray parameters As ObjectParameter()) As ObjectQuery(Of DbDataRecord)

Parametry

projection
String

Lista wybranych właściwości, które definiują projekcję.The list of selected properties that defines the projection.

parameters
ObjectParameter[]

Zero lub więcej parametrów, które są używane w tej metodzie.Zero or more parameters that are used in this method.

Zwraca

Nowe wystąpienie ObjectQuery<T> typu DbDataRecord, które jest równoważne z oryginalnym wystąpieniem z zastosowaniem SELECT .A new ObjectQuery<T> instance of type DbDataRecord that is equivalent to the original instance with SELECT applied.

Wyjątki

Parametr projection ma wartość null.projection is null.

—lub—-or-

Parametr parameters ma wartość null.parameters is null.

projection jest pustym ciągiem.The projection is an empty string.

Przykłady

Ten przykład jest oparty na Microsoft SQL Server przykładach produktu: Database.This example is based on the Microsoft SQL Server Product Samples: Database. W przykładzie tworzony jest nowy ObjectQuery<T> którego wyniki są rekordami danych, które zawierają ProductID pól wyników tego zapytania.The example creates a new ObjectQuery<T> whose results are data records that contain the ProductID fields of the results of this query.

int productID = 900;
using (AdventureWorksEntities context =
    new AdventureWorksEntities())
{
    string queryString = @"SELECT VALUE product FROM 
        AdventureWorksEntities.Products AS product
        WHERE product.ProductID > @productID";

    ObjectQuery<Product> productQuery1 =
        new ObjectQuery<Product>(queryString,
            context, MergeOption.NoTracking);

    productQuery1.Parameters.Add(new ObjectParameter("productID", productID));

    ObjectQuery<DbDataRecord> productQuery2 =
        productQuery1.Select("it.ProductID");

    foreach (DbDataRecord result in productQuery2)
    {
        Console.WriteLine("{0}", result["ProductID"]);
    }
}
Dim productID = 900
Using context As New AdventureWorksEntities()
    Dim queryString As String = "SELECT VALUE product FROM AdventureWorksEntities.Products AS product" & _
            " WHERE product.ProductID > @productID"

    Dim productQuery1 As New ObjectQuery(Of Product)(queryString, context, MergeOption.NoTracking)
    productQuery1.Parameters.Add(New ObjectParameter("productID", productID))

    Dim productQuery2 As ObjectQuery(Of DbDataRecord) = productQuery1.Select("it.ProductID")

    For Each result As DbDataRecord In productQuery2
        Console.WriteLine("{0}", result("ProductID"))
    Next
End Using

Uwagi

Select stosuje projekcję określoną przez parametr projection.Select applies the projection specified by the projection parameter. ObjectQuery<T> zwracany przez metodę Select jest zawsze typem wiersza DbDataRecord.The ObjectQuery<T> returned by the Select method is always a row type of DbDataRecord. Użyj metody SelectValue, aby zwracać wartości, które są typami prostymi, typami jednostek lub typami złożonymi.Use the SelectValue method to return values that are simple types, entity types, or complex types. Aby uzyskać więcej informacji, zobacz LINQ to Entities.For more information, see LINQ to Entities.

Gdy właściwość nawigacji jest uwzględniona w projekcji, wyniki zapytania obejmują kolekcję zagnieżdżonych obiektów DbDataRecord.When a navigation property is included in the projection, the query results include a collection of nested DbDataRecord objects. Aby uzyskać więcej informacji, zobacz How to: nawigowanie po relacjach przy użyciu właściwości nawigacji.For more information, see How to: Navigate Relationships Using Navigation Properties.

Dotyczy

Zobacz też