DbExpressionBuilder.SelectMany Method (DbExpression, Func<DbExpression, DbExpression>)

.NET Framework (current version)
 
System_CAPS_noteNote

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

Creates a new DbApplyExpression that evaluates the given apply expression once for each element of a given input set, producing a collection of rows with corresponding input and apply columns. Rows for which apply evaluates to an empty set are not included. A DbProjectExpression is then created that selects the apply column from each row, producing the overall collection of apply results.

Namespace:   System.Data.Common.CommandTrees.ExpressionBuilder
Assembly:  System.Data.Entity (in System.Data.Entity.dll)

public static DbProjectExpression SelectMany(
	this DbExpression source,
	Func<DbExpression, DbExpression> apply
)

Parameters

source
Type: System.Data.Common.CommandTrees.DbExpression

A DbExpression that specifies the input set.

apply
Type: System.Func<DbExpression, DbExpression>

A method that represents the logic to evaluate once for each member of the input set.

Return Value

Type: System.Data.Common.CommandTrees.DbProjectExpression

An new DbProjectExpression that selects the apply column from a new DbApplyExpression with the specified input and apply bindings and an DbExpressionKind of CrossApply.

Exception Condition
ArgumentNullException

source or apply is null.

ArgumentNullException

The expression produced by apply is null.

ArgumentException

source does not have a collection result type.

ArgumentException

The expression produced by apply does not have a collection type.

.NET Framework
Available since 4.5
Return to top
Show: