ObjectQuery<T>.Intersect(ObjectQuery<T>) Methode
Definitie
Belangrijk
Bepaalde informatie heeft betrekking op een voorlopige productversie die aanzienlijk kan worden gewijzigd voordat deze wordt uitgebracht. Microsoft biedt geen enkele expliciete of impliciete garanties met betrekking tot de informatie die hier wordt verstrekt.
Hiermee beperkt u de queryresultaten door alleen de resultaten op te vragen die aanwezig zijn in een andere objectquery.
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)
Parameters
- query
- ObjectQuery<T>
Een ObjectQuery<T> die de resultaten vertegenwoordigt die in de query moeten worden opgenomen.
Retouren
Een nieuw ObjectQuery<T> exemplaar dat gelijk is aan het oorspronkelijke exemplaar waarop INTERSECT is toegepast op basis van de opgegeven query.
Uitzonderingen
De query parameter is null of is een lege tekenreeks.
Voorbeelden
In dit voorbeeld wordt een nieuw ObjectQuery<T> object gemaakt dat de resultaten van twee andere query's bevat.
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);
}
}
Opmerkingen
De opgegeven query die resultaten definieert die moeten worden opgenomen, moeten van hetzelfde type zijn of van een type dat compatibel is met de ObjectQuery<T>.
Parameters die zijn gedefinieerd in de opgegeven query , worden samengevoegd met parameters die in het ObjectQuery<T> exemplaar zijn gedefinieerd. Parameters moeten uniek zijn in de gecombineerde ObjectParameterCollection. Er kunnen geen twee parameters in de gecombineerde verzameling met dezelfde naam zijn. Zie Methoden voor opbouwfunctie voor query's voor meer informatie.
De resulterende query neemt de verbinding over van het ObjectQuery<T> exemplaar waarop de Intersect methode is aangeroepen.