ObjectQuery<T>.Intersect(ObjectQuery<T>) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Schränkt die Abfrageergebnisse ein, indem nur die Ergebnisse eingeschlossen werden, die in einer anderen Objektabfrage vorhanden sind.
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)
Parameter
- query
- ObjectQuery<T>
Eine ObjectQuery<T>, die die in die Abfrage einzuschließenden Ergebnisse darstellt.
Gibt zurück
Eine neue ObjectQuery<T>-Instanz, die der ursprünglichen Instanz entspricht, für die INTERSECT auf Grundlage der angegebenen query
festgelegt ist.
Ausnahmen
Der query
-Parameter ist null
oder eine leere Zeichenfolge.
Beispiele
In diesem Beispiel wird ein neues ObjectQuery<T>-Objekt erstellt, das die Ergebnisse von zwei anderen Abfragen enthält.
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);
}
}
Hinweise
Die angegebene query
, die die einzuschließden Ergebnisse definiert, muss vom gleichen Typ oder von einem Typ sein, der mit kompatibel ObjectQuery<T>ist.
Parameter, die im angegebenen query
definiert sind, werden mit Parametern zusammengeführt, die in der ObjectQuery<T> -Instanz definiert sind. Parameter müssen in der kombinierten ObjectParameterCollection eindeutig sein. In der kombinierten Auflistung dürfen sich nicht zwei Parameter mit demselben Namen befinden. Weitere Informationen finden Sie unter Abfrage-Generator-Methoden.
Die resultierende Abfrage erbt die Verbindung von der ObjectQuery<T>-Instanz, für die die Intersect-Methode aufgerufen wurde.