ObjectQuery<T>.Intersect(ObjectQuery<T>) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Limite les résultats de la requête en incluant uniquement les résultats qui existent dans une autre requête d'objet.
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)
Paramètres
- query
- ObjectQuery<T>
Objet ObjectQuery<T> qui représente les résultats à inclure dans la requête.
Retours
Nouvelle instance ObjectQuery<T> qui est équivalente à l'instance d'origine avec INTERSECT appliqué selon l’élément query
spécifié.
Exceptions
Le paramètre query
est null
ou une chaîne vide.
Exemples
Cet exemple crée un nouvel objet ObjectQuery<T> qui contient les résultats de deux autres requêtes.
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);
}
}
Remarques
Le fourni query
qui définit les résultats à inclure doit être du même type ou d’un type compatible avec le ObjectQuery<T>.
Les paramètres définis dans le fourni query
sont fusionnés avec les paramètres définis dans l’instance ObjectQuery<T> . Les paramètres doivent être uniques dans l'objet ObjectParameterCollection combiné. La collection combinée ne peut pas contenir deux paramètres du même nom. Pour plus d’informations, consultez Méthodes du Générateur de requêtes.
La requête résultante hérite de la connexion de l'instance ObjectQuery<T> sur laquelle la méthode Intersect a été appelée.