Freigeben über


DbExpressionBuilder.SelectMany Methode

Definition

Überlädt

SelectMany(DbExpression, Func<DbExpression,DbExpression>)

Erstellt eine neue DbApplyExpression , die den angegebenen anwendungsausdruck einmal für jedes Element eines bestimmten Eingabesatzes auswertet und eine Auflistung von Zeilen mit entsprechenden Eingabe- und Angewendeten Spalten erzeugt. Zeilen, für die Auswertungen auf eine leere Menge angewendet werden, sind nicht enthalten. Anschließend wird ein DbProjectExpression erstellt, der die apply-Spalte aus jeder Zeile auswählt und die Gesamtauflistung der anwendungsbasierten Ergebnisse erzeugt.

SelectMany<TSelector>(DbExpression, Func<DbExpression,DbExpression>, Func<DbExpression,DbExpression,TSelector>)

Erstellt eine neue DbApplyExpression , die den angegebenen anwendungsausdruck einmal für jedes Element eines bestimmten Eingabesatzes auswertet und eine Auflistung von Zeilen mit entsprechenden Eingabe- und Angewendeten Spalten erzeugt. Zeilen, für die Auswertungen auf eine leere Menge angewendet werden, sind nicht enthalten. Anschließend wird ein DbProjectExpression erstellt, der den angegebenen Selektor über jede Zeile auswählt und die Gesamtsammlung der Ergebnisse erzeugt.

SelectMany(DbExpression, Func<DbExpression,DbExpression>)

Erstellt eine neue DbApplyExpression , die den angegebenen anwendungsausdruck einmal für jedes Element eines bestimmten Eingabesatzes auswertet und eine Auflistung von Zeilen mit entsprechenden Eingabe- und Angewendeten Spalten erzeugt. Zeilen, für die Auswertungen auf eine leere Menge angewendet werden, sind nicht enthalten. Anschließend wird ein DbProjectExpression erstellt, der die apply-Spalte aus jeder Zeile auswählt und die Gesamtauflistung der anwendungsbasierten Ergebnisse erzeugt.

public static System.Data.Entity.Core.Common.CommandTrees.DbProjectExpression SelectMany (this System.Data.Entity.Core.Common.CommandTrees.DbExpression source, Func<System.Data.Entity.Core.Common.CommandTrees.DbExpression,System.Data.Entity.Core.Common.CommandTrees.DbExpression> apply);
static member SelectMany : System.Data.Entity.Core.Common.CommandTrees.DbExpression * Func<System.Data.Entity.Core.Common.CommandTrees.DbExpression, System.Data.Entity.Core.Common.CommandTrees.DbExpression> -> System.Data.Entity.Core.Common.CommandTrees.DbProjectExpression
<Extension()>
Public Function SelectMany (source As DbExpression, apply As Func(Of DbExpression, DbExpression)) As DbProjectExpression

Parameter

source
DbExpression

Eine DbExpression, die das Eingabeset angibt.

apply
Func<DbExpression,DbExpression>

Eine Methode, die die Logik darstellt, die für jeden Member des Eingabesets einmal ausgewertet wird.

Gibt zurück

Ein neues DbProjectExpression, das die Spalte Übernehmen von einem neuen DbApplyExpression mit der angegebenen Eingabe auswählt und Bindungen anwendet und ein DbExpressionKind von CrossApply.

Ausnahmen

Der von apply erzeugte Ausdruck ist NULL.

Der von apply erzeugte Ausdruck verfügt nicht über einen Auflistungstyp.

Gilt für:

SelectMany<TSelector>(DbExpression, Func<DbExpression,DbExpression>, Func<DbExpression,DbExpression,TSelector>)

Erstellt eine neue DbApplyExpression , die den angegebenen anwendungsausdruck einmal für jedes Element eines bestimmten Eingabesatzes auswertet und eine Auflistung von Zeilen mit entsprechenden Eingabe- und Angewendeten Spalten erzeugt. Zeilen, für die Auswertungen auf eine leere Menge angewendet werden, sind nicht enthalten. Anschließend wird ein DbProjectExpression erstellt, der den angegebenen Selektor über jede Zeile auswählt und die Gesamtsammlung der Ergebnisse erzeugt.

public static System.Data.Entity.Core.Common.CommandTrees.DbProjectExpression SelectMany<TSelector> (this System.Data.Entity.Core.Common.CommandTrees.DbExpression source, Func<System.Data.Entity.Core.Common.CommandTrees.DbExpression,System.Data.Entity.Core.Common.CommandTrees.DbExpression> apply, Func<System.Data.Entity.Core.Common.CommandTrees.DbExpression,System.Data.Entity.Core.Common.CommandTrees.DbExpression,TSelector> selector);
static member SelectMany : System.Data.Entity.Core.Common.CommandTrees.DbExpression * Func<System.Data.Entity.Core.Common.CommandTrees.DbExpression, System.Data.Entity.Core.Common.CommandTrees.DbExpression> * Func<System.Data.Entity.Core.Common.CommandTrees.DbExpression, System.Data.Entity.Core.Common.CommandTrees.DbExpression, 'Selector> -> System.Data.Entity.Core.Common.CommandTrees.DbProjectExpression
<Extension()>
Public Function SelectMany(Of TSelector) (source As DbExpression, apply As Func(Of DbExpression, DbExpression), selector As Func(Of DbExpression, DbExpression, TSelector)) As DbProjectExpression

Typparameter

TSelector

Der Methodenergebnistyp des Selektors.

Parameter

source
DbExpression

Eine DbExpression, die das Eingabeset angibt.

apply
Func<DbExpression,DbExpression>

Eine Methode, die die Logik darstellt, die für jeden Member des Eingabesets einmal ausgewertet wird.

selector
Func<DbExpression,DbExpression,TSelector>

Eine Methode, die angibt, wie ein Element des Resultsets bei Angabe eines Elements des Eingabe- und Anwendungssets abgeleitet werden soll. Diese Methode muss einen instance eines Typs erzeugen, der mit SelectMany kompatibel ist und in aufgelöst DbExpression werden kann. Anforderungen an die Kompatibilität für TSelector werden in den Hinweisen beschrieben.

Gibt zurück

Ein neues DbProjectExpression, das das Ergebnis des angegebenen Selektors aus einem neuen DbApplyExpression mit der angegebenen Eingabe auswählt und Bindungen anwendet und ein DbExpressionKind von CrossApply.

Ausnahmen

Das Ergebnis des Selektors ist null bei der Konvertierung in DbExpression.

Der von apply erzeugte Ausdruck verfügt nicht über einen Auflistungstyp. weist keinen Auflistungstyp auf.

Gilt für: