Where Method

ObjectQuery<T>.Where Method (String, ObjectParameter[])

 

Limits the query to results that match specified filtering criteria.

Namespace:   System.Data.Objects
Assembly:  System.Data.Entity (in System.Data.Entity.dll)

public ObjectQuery<T> Where(
	string predicate,
	params ObjectParameter[] parameters
)

Parameters

predicate
Type: System.String

The filter predicate.

parameters
Type: System.Data.Objects.ObjectParameter[]

Zero or more parameters that are used in this method.

Return Value

Type: System.Data.Objects.ObjectQuery<T>

A new ObjectQuery<T> instance that is equivalent to the original instance with WHERE applied.

Exception Condition
ArgumentNullException

predicate is null.

-or-

parameters is null.

ArgumentException

The predicate is an empty string.

This example is based on the AdventureWorks Sales Model. The example creates a new ObjectQuery<T> that contains results of the existing query filtered by the following criteria: "it.ProductID = 900".

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

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

    ObjectQuery<Product> productQuery2 =
        productQuery1.Where("it.ProductID = @productID");

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

    // Iterate through the collection of Product items.
    foreach (Product result in productQuery2)
    {
        Console.WriteLine("Product Name: {0}; Product ID: {1}",
            result.Name, result.ProductID);
    }
}

.NET Framework
Available since 3.5
Return to top
Show:
© 2016 Microsoft