ObjectQuery<T>.Except(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 Ergebnisse aufgrund von Ergebnissen einer anderen Objektabfrage ausgeschlossen werden.
public:
System::Data::Objects::ObjectQuery<T> ^ Except(System::Data::Objects::ObjectQuery<T> ^ query);
public System.Data.Objects.ObjectQuery<T> Except (System.Data.Objects.ObjectQuery<T> query);
member this.Except : System.Data.Objects.ObjectQuery<'T> -> System.Data.Objects.ObjectQuery<'T>
Public Function Except (query As ObjectQuery(Of T)) As ObjectQuery(Of T)
Parameter
- query
- ObjectQuery<T>
Eine ObjectQuery<T>, die die von der Abfrage auszuschließenden Ergebnisse darstellt.
Gibt zurück
Eine neue ObjectQuery<T>-Instanz, die der ursprünglichen Instanz entspricht, für die jedoch EXCEPT auf Grundlage der angegebenen query
festgelegt ist.
Ausnahmen
Der query
-Parameter ist null
oder eine leere Zeichenfolge.
Beispiele
In diesem Beispiel wird die Methode verwendet Except , um ein neues ObjectQuery<T> Objekt zu erstellen und dann das Ergebnis der neuen Abfrage zu durchlaufen.
int productID = 900;
using (AdventureWorksEntities context =
new AdventureWorksEntities())
{
string queryString = @"SELECT VALUE product
FROM AdventureWorksEntities.Products AS product";
ObjectQuery<Product> productQuery =
new ObjectQuery<Product>(queryString,
context, MergeOption.NoTracking);
string queryString2 = @"SELECT VALUE product
FROM AdventureWorksEntities.Products
AS product WHERE product.ProductID < @productID";
ObjectQuery<Product> productQuery2 =
new ObjectQuery<Product>(queryString2,
context, MergeOption.NoTracking);
productQuery2.Parameters.Add(new ObjectParameter("productID", productID));
ObjectQuery<Product> productQuery3 =
productQuery.Except(productQuery2);
Console.WriteLine("Result of Except");
Console.WriteLine("------------------");
// Iterate through the collection of Product items
// after the Except method was called.
foreach (Product result in productQuery3)
Console.WriteLine("Product Name: {0}",
result.ProductID);
}
Hinweise
Die angegebene query
, die die auszuschließenden 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 Except aufgerufen wurde.