Aracılığıyla paylaş


ObjectQuery<T>.Intersect(ObjectQuery<T>) Yöntem

Tanım

Sorgu sonuçlarını, yalnızca başka bir nesne sorgusunda bulunan sonuçları ekleyerek sınırlar.

public:
 System::Data::Objects::ObjectQuery<T> ^ Intersect(System::Data::Objects::ObjectQuery<T> ^ query);
public System.Data.Objects.ObjectQuery<T> Intersect (System.Data.Objects.ObjectQuery<T> query);
member this.Intersect : System.Data.Objects.ObjectQuery<'T> -> System.Data.Objects.ObjectQuery<'T>
Public Function Intersect (query As ObjectQuery(Of T)) As ObjectQuery(Of T)

Parametreler

query
ObjectQuery<T>

ObjectQuery<T> Sorguya eklenecek sonuçları temsil eden bir.

Döndürülenler

Belirtilen querytemelinde INTERSECT uygulanmış özgün örneğe eşdeğer yeni ObjectQuery<T> bir örnek.

Özel durumlar

query parametresi null veya boş bir dizedir.

Örnekler

Bu örnek, diğer iki sorgunun sonuçlarını içeren yeni ObjectQuery<T> bir nesne oluşturur.

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

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

    string queryString2 = @"SELECT VALUE product
        FROM AdventureWorksEntities.Products
        AS product WHERE product.ProductID > @productID2";

    ObjectQuery<Product> productQuery2 =
        new ObjectQuery<Product>(queryString2,
            context, MergeOption.NoTracking);

    ObjectQuery<Product> productQuery3 =
        productQuery.Intersect(productQuery2);

    productQuery3.Parameters.Add(new ObjectParameter("productID1", productID1));
    productQuery3.Parameters.Add(new ObjectParameter("productID2", productID2));

    Console.WriteLine("Result of Intersect");
    Console.WriteLine("------------------");

    // Iterate through the collection of Product items
    // after the Intersect method was called.
    foreach (Product result in productQuery3)
    {
        Console.WriteLine("Product Name: {0}", result.ProductID);
    }
}

Açıklamalar

Dahil edilecek sonuçları tanımlayan sağlanan query aynı türde veya ile ObjectQuery<T>uyumlu bir türde olmalıdır.

Sağlanan query içinde tanımlanan parametreler, örnekte tanımlanan ObjectQuery<T> parametrelerle birleştirilir. Parametrelerin birleştirilmiş ObjectParameterCollectioniçinde benzersiz olması gerekir. Birleştirilmiş koleksiyonda aynı ada sahip iki parametre olamaz. Daha fazla bilgi için bkz. Sorgu Oluşturucu Yöntemleri.

Sonuçta elde edilen sorgu, yöntemin çağrıldığı örnekten ObjectQuery<T>Intersect bağlantıyı devralır.

Şunlara uygulanır

Ayrıca bkz.