Class TvfJoinSourceExtensions
#320 (T320) lambda-source join overloads: the runtime table-valued-function descriptor is supplied as
an expression (builder.Join(() => Db.MyTvf(42), (left, right) => ...)), so the factory
call keeps its argument expressions and the source is lowered by the shared
NextORM.Core.SourceExpressionLowerer instead of being resolved from entity metadata.
These are extension methods on purpose: an instance overload taking
Expression<TDelegate> next to the existing Cte<T> overload would make an
untyped Join(null, null) probe ambiguous (the existing call must keep binding to the CTE
overload), while an extension is only considered when no instance overload applies. Calls that
passed an entity/CTE/derived-query builder keep binding to the instance methods unchanged.
The factory must return TvfEntityBuilder<T> for the same row type, and its metadata must not depend on the argument values. A captured descriptor or any other shape without the original call expression is rejected with NotSupportedException (lost provenance).
public static class TvfJoinSourceExtensions
- Inheritance
-
TvfJoinSourceExtensions
- Inherited Members
Methods
CrossApply<TJoinEntity>(EntityBuilder, Expression<Func<EntityBuilder<TJoinEntity>>>)
Adds a CROSS APPLY over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<TableAlias, TJoinEntity> CrossApply<TJoinEntity>(this EntityBuilder builder, Expression<Func<EntityBuilder<TJoinEntity>>> source)
Parameters
builderEntityBuilderThe builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<TJoinEntity>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<TableAlias, TJoinEntity>
A builder over the joined projection.
Type Parameters
TJoinEntityThe mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
CrossApply<TEntity, TJoinEntity>(EntityBuilder<TEntity>, Expression<Func<EntityBuilder<TJoinEntity>>>)
Adds a CROSS APPLY over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<TEntity, TJoinEntity> CrossApply<TEntity, TJoinEntity>(this EntityBuilder<TEntity> builder, Expression<Func<EntityBuilder<TJoinEntity>>> source)
Parameters
builderEntityBuilder<TEntity>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<TJoinEntity>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<TEntity, TJoinEntity>
A builder over the joined projection.
Type Parameters
TEntityThe projection type of the receiver.
TJoinEntityThe mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
CrossApply<T1, T2, T3>(JoinedEntityBuilder<T1, T2>, Expression<Func<EntityBuilder<T3>>>)
Adds a CROSS APPLY over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<T1, T2, T3> CrossApply<T1, T2, T3>(this JoinedEntityBuilder<T1, T2> builder, Expression<Func<EntityBuilder<T3>>> source)
Parameters
builderJoinedEntityBuilder<T1, T2>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T3>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<T1, T2, T3>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3The mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
CrossApply<T1, T2, T3, T4>(JoinedEntityBuilder<T1, T2, T3>, Expression<Func<EntityBuilder<T4>>>)
Adds a CROSS APPLY over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<T1, T2, T3, T4> CrossApply<T1, T2, T3, T4>(this JoinedEntityBuilder<T1, T2, T3> builder, Expression<Func<EntityBuilder<T4>>> source)
Parameters
builderJoinedEntityBuilder<T1, T2, T3>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T4>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4The mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
CrossApply<T1, T2, T3, T4, T5>(JoinedEntityBuilder<T1, T2, T3, T4>, Expression<Func<EntityBuilder<T5>>>)
Adds a CROSS APPLY over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5> CrossApply<T1, T2, T3, T4, T5>(this JoinedEntityBuilder<T1, T2, T3, T4> builder, Expression<Func<EntityBuilder<T5>>> source)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T5>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5The mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
CrossApply<T1, T2, T3, T4, T5, T6>(JoinedEntityBuilder<T1, T2, T3, T4, T5>, Expression<Func<EntityBuilder<T6>>>)
Adds a CROSS APPLY over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6> CrossApply<T1, T2, T3, T4, T5, T6>(this JoinedEntityBuilder<T1, T2, T3, T4, T5> builder, Expression<Func<EntityBuilder<T6>>> source)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T6>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6The mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
CrossApply<T1, T2, T3, T4, T5, T6, T7>(JoinedEntityBuilder<T1, T2, T3, T4, T5, T6>, Expression<Func<EntityBuilder<T7>>>)
Adds a CROSS APPLY over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7> CrossApply<T1, T2, T3, T4, T5, T6, T7>(this JoinedEntityBuilder<T1, T2, T3, T4, T5, T6> builder, Expression<Func<EntityBuilder<T7>>> source)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5, T6>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T7>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6A projection element type of the receiver.
T7The mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
CrossApply<T1, T2, T3, T4, T5, T6, T7, T8>(JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>, Expression<Func<EntityBuilder<T8>>>)
Adds a CROSS APPLY over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7, T8> CrossApply<T1, T2, T3, T4, T5, T6, T7, T8>(this JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7> builder, Expression<Func<EntityBuilder<T8>>> source)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T8>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7, T8>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6A projection element type of the receiver.
T7A projection element type of the receiver.
T8The mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
CrossJoin<TJoinEntity>(EntityBuilder, Expression<Func<EntityBuilder<TJoinEntity>>>)
Adds a CROSS JOIN over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<TableAlias, TJoinEntity> CrossJoin<TJoinEntity>(this EntityBuilder builder, Expression<Func<EntityBuilder<TJoinEntity>>> source)
Parameters
builderEntityBuilderThe builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<TJoinEntity>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<TableAlias, TJoinEntity>
A builder over the joined projection.
Type Parameters
TJoinEntityThe mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
CrossJoin<TEntity, TJoinEntity>(EntityBuilder<TEntity>, Expression<Func<EntityBuilder<TJoinEntity>>>)
Adds a CROSS JOIN over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<TEntity, TJoinEntity> CrossJoin<TEntity, TJoinEntity>(this EntityBuilder<TEntity> builder, Expression<Func<EntityBuilder<TJoinEntity>>> source)
Parameters
builderEntityBuilder<TEntity>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<TJoinEntity>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<TEntity, TJoinEntity>
A builder over the joined projection.
Type Parameters
TEntityThe projection type of the receiver.
TJoinEntityThe mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
CrossJoin<T1, T2, T3>(JoinedEntityBuilder<T1, T2>, Expression<Func<EntityBuilder<T3>>>)
Adds a CROSS JOIN over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<T1, T2, T3> CrossJoin<T1, T2, T3>(this JoinedEntityBuilder<T1, T2> builder, Expression<Func<EntityBuilder<T3>>> source)
Parameters
builderJoinedEntityBuilder<T1, T2>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T3>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<T1, T2, T3>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3The mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
CrossJoin<T1, T2, T3, T4>(JoinedEntityBuilder<T1, T2, T3>, Expression<Func<EntityBuilder<T4>>>)
Adds a CROSS JOIN over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<T1, T2, T3, T4> CrossJoin<T1, T2, T3, T4>(this JoinedEntityBuilder<T1, T2, T3> builder, Expression<Func<EntityBuilder<T4>>> source)
Parameters
builderJoinedEntityBuilder<T1, T2, T3>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T4>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4The mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
CrossJoin<T1, T2, T3, T4, T5>(JoinedEntityBuilder<T1, T2, T3, T4>, Expression<Func<EntityBuilder<T5>>>)
Adds a CROSS JOIN over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5> CrossJoin<T1, T2, T3, T4, T5>(this JoinedEntityBuilder<T1, T2, T3, T4> builder, Expression<Func<EntityBuilder<T5>>> source)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T5>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5The mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
CrossJoin<T1, T2, T3, T4, T5, T6>(JoinedEntityBuilder<T1, T2, T3, T4, T5>, Expression<Func<EntityBuilder<T6>>>)
Adds a CROSS JOIN over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6> CrossJoin<T1, T2, T3, T4, T5, T6>(this JoinedEntityBuilder<T1, T2, T3, T4, T5> builder, Expression<Func<EntityBuilder<T6>>> source)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T6>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6The mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
CrossJoin<T1, T2, T3, T4, T5, T6, T7>(JoinedEntityBuilder<T1, T2, T3, T4, T5, T6>, Expression<Func<EntityBuilder<T7>>>)
Adds a CROSS JOIN over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7> CrossJoin<T1, T2, T3, T4, T5, T6, T7>(this JoinedEntityBuilder<T1, T2, T3, T4, T5, T6> builder, Expression<Func<EntityBuilder<T7>>> source)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5, T6>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T7>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6A projection element type of the receiver.
T7The mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
CrossJoin<T1, T2, T3, T4, T5, T6, T7, T8>(JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>, Expression<Func<EntityBuilder<T8>>>)
Adds a CROSS JOIN over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7, T8> CrossJoin<T1, T2, T3, T4, T5, T6, T7, T8>(this JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7> builder, Expression<Func<EntityBuilder<T8>>> source)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T8>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7, T8>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6A projection element type of the receiver.
T7A projection element type of the receiver.
T8The mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
FullJoin<TJoinEntity>(EntityBuilder, Expression<Func<EntityBuilder<TJoinEntity>>>, Expression<Func<TableAlias, TJoinEntity, bool>>)
Adds a FULL JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<TableAlias, TJoinEntity> FullJoin<TJoinEntity>(this EntityBuilder builder, Expression<Func<EntityBuilder<TJoinEntity>>> source, Expression<Func<TableAlias, TJoinEntity, bool>> joinCondition)
Parameters
builderEntityBuilderThe builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<TJoinEntity>>>The expression that calls the runtime factory.
joinConditionExpression<Func<TableAlias, TJoinEntity, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<TableAlias, TJoinEntity>
A builder over the joined projection.
Type Parameters
TJoinEntityThe mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
FullJoin<TJoinEntity>(EntityBuilder, Expression<Func<EntityBuilder<TJoinEntity>>>, Expression<Func<TableAlias, TJoinEntity, bool>>, Action<JoinOptions>)
Adds a FULL JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<TableAlias, TJoinEntity> FullJoin<TJoinEntity>(this EntityBuilder builder, Expression<Func<EntityBuilder<TJoinEntity>>> source, Expression<Func<TableAlias, TJoinEntity, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderEntityBuilderThe builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<TJoinEntity>>>The expression that calls the runtime factory.
joinConditionExpression<Func<TableAlias, TJoinEntity, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<TableAlias, TJoinEntity>
A builder over the joined projection.
Type Parameters
TJoinEntityThe mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
FullJoin<TEntity, TJoinEntity>(EntityBuilder<TEntity>, Expression<Func<EntityBuilder<TJoinEntity>>>, Expression<Func<TEntity, TJoinEntity, bool>>)
Adds a FULL JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<TEntity, TJoinEntity> FullJoin<TEntity, TJoinEntity>(this EntityBuilder<TEntity> builder, Expression<Func<EntityBuilder<TJoinEntity>>> source, Expression<Func<TEntity, TJoinEntity, bool>> joinCondition)
Parameters
builderEntityBuilder<TEntity>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<TJoinEntity>>>The expression that calls the runtime factory.
joinConditionExpression<Func<TEntity, TJoinEntity, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<TEntity, TJoinEntity>
A builder over the joined projection.
Type Parameters
TEntityThe projection type of the receiver.
TJoinEntityThe mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
FullJoin<TEntity, TJoinEntity>(EntityBuilder<TEntity>, Expression<Func<EntityBuilder<TJoinEntity>>>, Expression<Func<TEntity, TJoinEntity, bool>>, Action<JoinOptions>)
Adds a FULL JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<TEntity, TJoinEntity> FullJoin<TEntity, TJoinEntity>(this EntityBuilder<TEntity> builder, Expression<Func<EntityBuilder<TJoinEntity>>> source, Expression<Func<TEntity, TJoinEntity, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderEntityBuilder<TEntity>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<TJoinEntity>>>The expression that calls the runtime factory.
joinConditionExpression<Func<TEntity, TJoinEntity, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<TEntity, TJoinEntity>
A builder over the joined projection.
Type Parameters
TEntityThe projection type of the receiver.
TJoinEntityThe mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
FullJoin<T1, T2, T3>(JoinedEntityBuilder<T1, T2>, Expression<Func<EntityBuilder<T3>>>, Expression<Func<Projection<T1, T2>, T3, bool>>)
Adds a FULL JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3> FullJoin<T1, T2, T3>(this JoinedEntityBuilder<T1, T2> builder, Expression<Func<EntityBuilder<T3>>> source, Expression<Func<Projection<T1, T2>, T3, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T3>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2>, T3, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
FullJoin<T1, T2, T3>(JoinedEntityBuilder<T1, T2>, Expression<Func<EntityBuilder<T3>>>, Expression<Func<Projection<T1, T2>, T3, bool>>, Action<JoinOptions>)
Adds a FULL JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3> FullJoin<T1, T2, T3>(this JoinedEntityBuilder<T1, T2> builder, Expression<Func<EntityBuilder<T3>>> source, Expression<Func<Projection<T1, T2>, T3, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T3>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2>, T3, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
FullJoin<T1, T2, T3, T4>(JoinedEntityBuilder<T1, T2, T3>, Expression<Func<EntityBuilder<T4>>>, Expression<Func<Projection<T1, T2, T3>, T4, bool>>)
Adds a FULL JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3, T4> FullJoin<T1, T2, T3, T4>(this JoinedEntityBuilder<T1, T2, T3> builder, Expression<Func<EntityBuilder<T4>>> source, Expression<Func<Projection<T1, T2, T3>, T4, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2, T3>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T4>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3>, T4, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
FullJoin<T1, T2, T3, T4>(JoinedEntityBuilder<T1, T2, T3>, Expression<Func<EntityBuilder<T4>>>, Expression<Func<Projection<T1, T2, T3>, T4, bool>>, Action<JoinOptions>)
Adds a FULL JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3, T4> FullJoin<T1, T2, T3, T4>(this JoinedEntityBuilder<T1, T2, T3> builder, Expression<Func<EntityBuilder<T4>>> source, Expression<Func<Projection<T1, T2, T3>, T4, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2, T3>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T4>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3>, T4, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3, T4>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
FullJoin<T1, T2, T3, T4, T5>(JoinedEntityBuilder<T1, T2, T3, T4>, Expression<Func<EntityBuilder<T5>>>, Expression<Func<Projection<T1, T2, T3, T4>, T5, bool>>)
Adds a FULL JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5> FullJoin<T1, T2, T3, T4, T5>(this JoinedEntityBuilder<T1, T2, T3, T4> builder, Expression<Func<EntityBuilder<T5>>> source, Expression<Func<Projection<T1, T2, T3, T4>, T5, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T5>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4>, T5, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
FullJoin<T1, T2, T3, T4, T5>(JoinedEntityBuilder<T1, T2, T3, T4>, Expression<Func<EntityBuilder<T5>>>, Expression<Func<Projection<T1, T2, T3, T4>, T5, bool>>, Action<JoinOptions>)
Adds a FULL JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5> FullJoin<T1, T2, T3, T4, T5>(this JoinedEntityBuilder<T1, T2, T3, T4> builder, Expression<Func<EntityBuilder<T5>>> source, Expression<Func<Projection<T1, T2, T3, T4>, T5, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T5>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4>, T5, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
FullJoin<T1, T2, T3, T4, T5, T6>(JoinedEntityBuilder<T1, T2, T3, T4, T5>, Expression<Func<EntityBuilder<T6>>>, Expression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>>)
Adds a FULL JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6> FullJoin<T1, T2, T3, T4, T5, T6>(this JoinedEntityBuilder<T1, T2, T3, T4, T5> builder, Expression<Func<EntityBuilder<T6>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T6>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
FullJoin<T1, T2, T3, T4, T5, T6>(JoinedEntityBuilder<T1, T2, T3, T4, T5>, Expression<Func<EntityBuilder<T6>>>, Expression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>>, Action<JoinOptions>)
Adds a FULL JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6> FullJoin<T1, T2, T3, T4, T5, T6>(this JoinedEntityBuilder<T1, T2, T3, T4, T5> builder, Expression<Func<EntityBuilder<T6>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T6>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
FullJoin<T1, T2, T3, T4, T5, T6, T7>(JoinedEntityBuilder<T1, T2, T3, T4, T5, T6>, Expression<Func<EntityBuilder<T7>>>, Expression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>>)
Adds a FULL JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7> FullJoin<T1, T2, T3, T4, T5, T6, T7>(this JoinedEntityBuilder<T1, T2, T3, T4, T5, T6> builder, Expression<Func<EntityBuilder<T7>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5, T6>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T7>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6A projection element type of the receiver.
T7The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
FullJoin<T1, T2, T3, T4, T5, T6, T7>(JoinedEntityBuilder<T1, T2, T3, T4, T5, T6>, Expression<Func<EntityBuilder<T7>>>, Expression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>>, Action<JoinOptions>)
Adds a FULL JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7> FullJoin<T1, T2, T3, T4, T5, T6, T7>(this JoinedEntityBuilder<T1, T2, T3, T4, T5, T6> builder, Expression<Func<EntityBuilder<T7>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5, T6>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T7>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6A projection element type of the receiver.
T7The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
FullJoin<T1, T2, T3, T4, T5, T6, T7, T8>(JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>, Expression<Func<EntityBuilder<T8>>>, Expression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>>)
Adds a FULL JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7, T8> FullJoin<T1, T2, T3, T4, T5, T6, T7, T8>(this JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7> builder, Expression<Func<EntityBuilder<T8>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T8>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7, T8>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6A projection element type of the receiver.
T7A projection element type of the receiver.
T8The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
FullJoin<T1, T2, T3, T4, T5, T6, T7, T8>(JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>, Expression<Func<EntityBuilder<T8>>>, Expression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>>, Action<JoinOptions>)
Adds a FULL JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7, T8> FullJoin<T1, T2, T3, T4, T5, T6, T7, T8>(this JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7> builder, Expression<Func<EntityBuilder<T8>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T8>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7, T8>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6A projection element type of the receiver.
T7A projection element type of the receiver.
T8The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
Join<TJoinEntity>(EntityBuilder, Expression<Func<EntityBuilder<TJoinEntity>>>, Expression<Func<TableAlias, TJoinEntity, bool>>)
Adds a INNER JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<TableAlias, TJoinEntity> Join<TJoinEntity>(this EntityBuilder builder, Expression<Func<EntityBuilder<TJoinEntity>>> source, Expression<Func<TableAlias, TJoinEntity, bool>> joinCondition)
Parameters
builderEntityBuilderThe builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<TJoinEntity>>>The expression that calls the runtime factory.
joinConditionExpression<Func<TableAlias, TJoinEntity, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<TableAlias, TJoinEntity>
A builder over the joined projection.
Type Parameters
TJoinEntityThe mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
Join<TJoinEntity>(EntityBuilder, Expression<Func<EntityBuilder<TJoinEntity>>>, Expression<Func<TableAlias, TJoinEntity, bool>>, Action<JoinOptions>)
Adds a INNER JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<TableAlias, TJoinEntity> Join<TJoinEntity>(this EntityBuilder builder, Expression<Func<EntityBuilder<TJoinEntity>>> source, Expression<Func<TableAlias, TJoinEntity, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderEntityBuilderThe builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<TJoinEntity>>>The expression that calls the runtime factory.
joinConditionExpression<Func<TableAlias, TJoinEntity, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<TableAlias, TJoinEntity>
A builder over the joined projection.
Type Parameters
TJoinEntityThe mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
Join<TEntity, TJoinEntity>(EntityBuilder<TEntity>, Expression<Func<EntityBuilder<TJoinEntity>>>, Expression<Func<TEntity, TJoinEntity, bool>>)
Adds a INNER JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<TEntity, TJoinEntity> Join<TEntity, TJoinEntity>(this EntityBuilder<TEntity> builder, Expression<Func<EntityBuilder<TJoinEntity>>> source, Expression<Func<TEntity, TJoinEntity, bool>> joinCondition)
Parameters
builderEntityBuilder<TEntity>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<TJoinEntity>>>The expression that calls the runtime factory.
joinConditionExpression<Func<TEntity, TJoinEntity, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<TEntity, TJoinEntity>
A builder over the joined projection.
Type Parameters
TEntityThe projection type of the receiver.
TJoinEntityThe mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
Join<TEntity, TJoinEntity>(EntityBuilder<TEntity>, Expression<Func<EntityBuilder<TJoinEntity>>>, Expression<Func<TEntity, TJoinEntity, bool>>, Action<JoinOptions>)
Adds a INNER JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<TEntity, TJoinEntity> Join<TEntity, TJoinEntity>(this EntityBuilder<TEntity> builder, Expression<Func<EntityBuilder<TJoinEntity>>> source, Expression<Func<TEntity, TJoinEntity, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderEntityBuilder<TEntity>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<TJoinEntity>>>The expression that calls the runtime factory.
joinConditionExpression<Func<TEntity, TJoinEntity, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<TEntity, TJoinEntity>
A builder over the joined projection.
Type Parameters
TEntityThe projection type of the receiver.
TJoinEntityThe mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
Join<T1, T2, T3>(JoinedEntityBuilder<T1, T2>, Expression<Func<EntityBuilder<T3>>>, Expression<Func<Projection<T1, T2>, T3, bool>>)
Adds a INNER JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3> Join<T1, T2, T3>(this JoinedEntityBuilder<T1, T2> builder, Expression<Func<EntityBuilder<T3>>> source, Expression<Func<Projection<T1, T2>, T3, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T3>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2>, T3, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
Join<T1, T2, T3>(JoinedEntityBuilder<T1, T2>, Expression<Func<EntityBuilder<T3>>>, Expression<Func<Projection<T1, T2>, T3, bool>>, Action<JoinOptions>)
Adds a INNER JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3> Join<T1, T2, T3>(this JoinedEntityBuilder<T1, T2> builder, Expression<Func<EntityBuilder<T3>>> source, Expression<Func<Projection<T1, T2>, T3, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T3>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2>, T3, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
Join<T1, T2, T3, T4>(JoinedEntityBuilder<T1, T2, T3>, Expression<Func<EntityBuilder<T4>>>, Expression<Func<Projection<T1, T2, T3>, T4, bool>>)
Adds a INNER JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3, T4> Join<T1, T2, T3, T4>(this JoinedEntityBuilder<T1, T2, T3> builder, Expression<Func<EntityBuilder<T4>>> source, Expression<Func<Projection<T1, T2, T3>, T4, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2, T3>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T4>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3>, T4, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
Join<T1, T2, T3, T4>(JoinedEntityBuilder<T1, T2, T3>, Expression<Func<EntityBuilder<T4>>>, Expression<Func<Projection<T1, T2, T3>, T4, bool>>, Action<JoinOptions>)
Adds a INNER JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3, T4> Join<T1, T2, T3, T4>(this JoinedEntityBuilder<T1, T2, T3> builder, Expression<Func<EntityBuilder<T4>>> source, Expression<Func<Projection<T1, T2, T3>, T4, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2, T3>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T4>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3>, T4, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3, T4>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
Join<T1, T2, T3, T4, T5>(JoinedEntityBuilder<T1, T2, T3, T4>, Expression<Func<EntityBuilder<T5>>>, Expression<Func<Projection<T1, T2, T3, T4>, T5, bool>>)
Adds a INNER JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5> Join<T1, T2, T3, T4, T5>(this JoinedEntityBuilder<T1, T2, T3, T4> builder, Expression<Func<EntityBuilder<T5>>> source, Expression<Func<Projection<T1, T2, T3, T4>, T5, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T5>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4>, T5, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
Join<T1, T2, T3, T4, T5>(JoinedEntityBuilder<T1, T2, T3, T4>, Expression<Func<EntityBuilder<T5>>>, Expression<Func<Projection<T1, T2, T3, T4>, T5, bool>>, Action<JoinOptions>)
Adds a INNER JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5> Join<T1, T2, T3, T4, T5>(this JoinedEntityBuilder<T1, T2, T3, T4> builder, Expression<Func<EntityBuilder<T5>>> source, Expression<Func<Projection<T1, T2, T3, T4>, T5, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T5>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4>, T5, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
Join<T1, T2, T3, T4, T5, T6>(JoinedEntityBuilder<T1, T2, T3, T4, T5>, Expression<Func<EntityBuilder<T6>>>, Expression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>>)
Adds a INNER JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6> Join<T1, T2, T3, T4, T5, T6>(this JoinedEntityBuilder<T1, T2, T3, T4, T5> builder, Expression<Func<EntityBuilder<T6>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T6>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
Join<T1, T2, T3, T4, T5, T6>(JoinedEntityBuilder<T1, T2, T3, T4, T5>, Expression<Func<EntityBuilder<T6>>>, Expression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>>, Action<JoinOptions>)
Adds a INNER JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6> Join<T1, T2, T3, T4, T5, T6>(this JoinedEntityBuilder<T1, T2, T3, T4, T5> builder, Expression<Func<EntityBuilder<T6>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T6>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
Join<T1, T2, T3, T4, T5, T6, T7>(JoinedEntityBuilder<T1, T2, T3, T4, T5, T6>, Expression<Func<EntityBuilder<T7>>>, Expression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>>)
Adds a INNER JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7> Join<T1, T2, T3, T4, T5, T6, T7>(this JoinedEntityBuilder<T1, T2, T3, T4, T5, T6> builder, Expression<Func<EntityBuilder<T7>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5, T6>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T7>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6A projection element type of the receiver.
T7The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
Join<T1, T2, T3, T4, T5, T6, T7>(JoinedEntityBuilder<T1, T2, T3, T4, T5, T6>, Expression<Func<EntityBuilder<T7>>>, Expression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>>, Action<JoinOptions>)
Adds a INNER JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7> Join<T1, T2, T3, T4, T5, T6, T7>(this JoinedEntityBuilder<T1, T2, T3, T4, T5, T6> builder, Expression<Func<EntityBuilder<T7>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5, T6>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T7>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6A projection element type of the receiver.
T7The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
Join<T1, T2, T3, T4, T5, T6, T7, T8>(JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>, Expression<Func<EntityBuilder<T8>>>, Expression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>>)
Adds a INNER JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7, T8> Join<T1, T2, T3, T4, T5, T6, T7, T8>(this JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7> builder, Expression<Func<EntityBuilder<T8>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T8>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7, T8>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6A projection element type of the receiver.
T7A projection element type of the receiver.
T8The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
Join<T1, T2, T3, T4, T5, T6, T7, T8>(JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>, Expression<Func<EntityBuilder<T8>>>, Expression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>>, Action<JoinOptions>)
Adds a INNER JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7, T8> Join<T1, T2, T3, T4, T5, T6, T7, T8>(this JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7> builder, Expression<Func<EntityBuilder<T8>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T8>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7, T8>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6A projection element type of the receiver.
T7A projection element type of the receiver.
T8The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
LeftJoin<TJoinEntity>(EntityBuilder, Expression<Func<EntityBuilder<TJoinEntity>>>, Expression<Func<TableAlias, TJoinEntity, bool>>)
Adds a LEFT JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<TableAlias, TJoinEntity> LeftJoin<TJoinEntity>(this EntityBuilder builder, Expression<Func<EntityBuilder<TJoinEntity>>> source, Expression<Func<TableAlias, TJoinEntity, bool>> joinCondition)
Parameters
builderEntityBuilderThe builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<TJoinEntity>>>The expression that calls the runtime factory.
joinConditionExpression<Func<TableAlias, TJoinEntity, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<TableAlias, TJoinEntity>
A builder over the joined projection.
Type Parameters
TJoinEntityThe mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
LeftJoin<TJoinEntity>(EntityBuilder, Expression<Func<EntityBuilder<TJoinEntity>>>, Expression<Func<TableAlias, TJoinEntity, bool>>, Action<JoinOptions>)
Adds a LEFT JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<TableAlias, TJoinEntity> LeftJoin<TJoinEntity>(this EntityBuilder builder, Expression<Func<EntityBuilder<TJoinEntity>>> source, Expression<Func<TableAlias, TJoinEntity, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderEntityBuilderThe builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<TJoinEntity>>>The expression that calls the runtime factory.
joinConditionExpression<Func<TableAlias, TJoinEntity, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<TableAlias, TJoinEntity>
A builder over the joined projection.
Type Parameters
TJoinEntityThe mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
LeftJoin<TEntity, TJoinEntity>(EntityBuilder<TEntity>, Expression<Func<EntityBuilder<TJoinEntity>>>, Expression<Func<TEntity, TJoinEntity, bool>>)
Adds a LEFT JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<TEntity, TJoinEntity> LeftJoin<TEntity, TJoinEntity>(this EntityBuilder<TEntity> builder, Expression<Func<EntityBuilder<TJoinEntity>>> source, Expression<Func<TEntity, TJoinEntity, bool>> joinCondition)
Parameters
builderEntityBuilder<TEntity>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<TJoinEntity>>>The expression that calls the runtime factory.
joinConditionExpression<Func<TEntity, TJoinEntity, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<TEntity, TJoinEntity>
A builder over the joined projection.
Type Parameters
TEntityThe projection type of the receiver.
TJoinEntityThe mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
LeftJoin<TEntity, TJoinEntity>(EntityBuilder<TEntity>, Expression<Func<EntityBuilder<TJoinEntity>>>, Expression<Func<TEntity, TJoinEntity, bool>>, Action<JoinOptions>)
Adds a LEFT JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<TEntity, TJoinEntity> LeftJoin<TEntity, TJoinEntity>(this EntityBuilder<TEntity> builder, Expression<Func<EntityBuilder<TJoinEntity>>> source, Expression<Func<TEntity, TJoinEntity, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderEntityBuilder<TEntity>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<TJoinEntity>>>The expression that calls the runtime factory.
joinConditionExpression<Func<TEntity, TJoinEntity, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<TEntity, TJoinEntity>
A builder over the joined projection.
Type Parameters
TEntityThe projection type of the receiver.
TJoinEntityThe mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
LeftJoin<T1, T2, T3>(JoinedEntityBuilder<T1, T2>, Expression<Func<EntityBuilder<T3>>>, Expression<Func<Projection<T1, T2>, T3, bool>>)
Adds a LEFT JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3> LeftJoin<T1, T2, T3>(this JoinedEntityBuilder<T1, T2> builder, Expression<Func<EntityBuilder<T3>>> source, Expression<Func<Projection<T1, T2>, T3, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T3>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2>, T3, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
LeftJoin<T1, T2, T3>(JoinedEntityBuilder<T1, T2>, Expression<Func<EntityBuilder<T3>>>, Expression<Func<Projection<T1, T2>, T3, bool>>, Action<JoinOptions>)
Adds a LEFT JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3> LeftJoin<T1, T2, T3>(this JoinedEntityBuilder<T1, T2> builder, Expression<Func<EntityBuilder<T3>>> source, Expression<Func<Projection<T1, T2>, T3, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T3>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2>, T3, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
LeftJoin<T1, T2, T3, T4>(JoinedEntityBuilder<T1, T2, T3>, Expression<Func<EntityBuilder<T4>>>, Expression<Func<Projection<T1, T2, T3>, T4, bool>>)
Adds a LEFT JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3, T4> LeftJoin<T1, T2, T3, T4>(this JoinedEntityBuilder<T1, T2, T3> builder, Expression<Func<EntityBuilder<T4>>> source, Expression<Func<Projection<T1, T2, T3>, T4, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2, T3>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T4>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3>, T4, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
LeftJoin<T1, T2, T3, T4>(JoinedEntityBuilder<T1, T2, T3>, Expression<Func<EntityBuilder<T4>>>, Expression<Func<Projection<T1, T2, T3>, T4, bool>>, Action<JoinOptions>)
Adds a LEFT JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3, T4> LeftJoin<T1, T2, T3, T4>(this JoinedEntityBuilder<T1, T2, T3> builder, Expression<Func<EntityBuilder<T4>>> source, Expression<Func<Projection<T1, T2, T3>, T4, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2, T3>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T4>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3>, T4, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3, T4>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
LeftJoin<T1, T2, T3, T4, T5>(JoinedEntityBuilder<T1, T2, T3, T4>, Expression<Func<EntityBuilder<T5>>>, Expression<Func<Projection<T1, T2, T3, T4>, T5, bool>>)
Adds a LEFT JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5> LeftJoin<T1, T2, T3, T4, T5>(this JoinedEntityBuilder<T1, T2, T3, T4> builder, Expression<Func<EntityBuilder<T5>>> source, Expression<Func<Projection<T1, T2, T3, T4>, T5, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T5>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4>, T5, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
LeftJoin<T1, T2, T3, T4, T5>(JoinedEntityBuilder<T1, T2, T3, T4>, Expression<Func<EntityBuilder<T5>>>, Expression<Func<Projection<T1, T2, T3, T4>, T5, bool>>, Action<JoinOptions>)
Adds a LEFT JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5> LeftJoin<T1, T2, T3, T4, T5>(this JoinedEntityBuilder<T1, T2, T3, T4> builder, Expression<Func<EntityBuilder<T5>>> source, Expression<Func<Projection<T1, T2, T3, T4>, T5, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T5>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4>, T5, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
LeftJoin<T1, T2, T3, T4, T5, T6>(JoinedEntityBuilder<T1, T2, T3, T4, T5>, Expression<Func<EntityBuilder<T6>>>, Expression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>>)
Adds a LEFT JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6> LeftJoin<T1, T2, T3, T4, T5, T6>(this JoinedEntityBuilder<T1, T2, T3, T4, T5> builder, Expression<Func<EntityBuilder<T6>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T6>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
LeftJoin<T1, T2, T3, T4, T5, T6>(JoinedEntityBuilder<T1, T2, T3, T4, T5>, Expression<Func<EntityBuilder<T6>>>, Expression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>>, Action<JoinOptions>)
Adds a LEFT JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6> LeftJoin<T1, T2, T3, T4, T5, T6>(this JoinedEntityBuilder<T1, T2, T3, T4, T5> builder, Expression<Func<EntityBuilder<T6>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T6>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
LeftJoin<T1, T2, T3, T4, T5, T6, T7>(JoinedEntityBuilder<T1, T2, T3, T4, T5, T6>, Expression<Func<EntityBuilder<T7>>>, Expression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>>)
Adds a LEFT JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7> LeftJoin<T1, T2, T3, T4, T5, T6, T7>(this JoinedEntityBuilder<T1, T2, T3, T4, T5, T6> builder, Expression<Func<EntityBuilder<T7>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5, T6>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T7>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6A projection element type of the receiver.
T7The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
LeftJoin<T1, T2, T3, T4, T5, T6, T7>(JoinedEntityBuilder<T1, T2, T3, T4, T5, T6>, Expression<Func<EntityBuilder<T7>>>, Expression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>>, Action<JoinOptions>)
Adds a LEFT JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7> LeftJoin<T1, T2, T3, T4, T5, T6, T7>(this JoinedEntityBuilder<T1, T2, T3, T4, T5, T6> builder, Expression<Func<EntityBuilder<T7>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5, T6>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T7>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6A projection element type of the receiver.
T7The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
LeftJoin<T1, T2, T3, T4, T5, T6, T7, T8>(JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>, Expression<Func<EntityBuilder<T8>>>, Expression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>>)
Adds a LEFT JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7, T8> LeftJoin<T1, T2, T3, T4, T5, T6, T7, T8>(this JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7> builder, Expression<Func<EntityBuilder<T8>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T8>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7, T8>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6A projection element type of the receiver.
T7A projection element type of the receiver.
T8The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
LeftJoin<T1, T2, T3, T4, T5, T6, T7, T8>(JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>, Expression<Func<EntityBuilder<T8>>>, Expression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>>, Action<JoinOptions>)
Adds a LEFT JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7, T8> LeftJoin<T1, T2, T3, T4, T5, T6, T7, T8>(this JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7> builder, Expression<Func<EntityBuilder<T8>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T8>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7, T8>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6A projection element type of the receiver.
T7A projection element type of the receiver.
T8The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
OuterApply<TJoinEntity>(EntityBuilder, Expression<Func<EntityBuilder<TJoinEntity>>>)
Adds a OUTER APPLY over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<TableAlias, TJoinEntity> OuterApply<TJoinEntity>(this EntityBuilder builder, Expression<Func<EntityBuilder<TJoinEntity>>> source)
Parameters
builderEntityBuilderThe builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<TJoinEntity>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<TableAlias, TJoinEntity>
A builder over the joined projection.
Type Parameters
TJoinEntityThe mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
OuterApply<TEntity, TJoinEntity>(EntityBuilder<TEntity>, Expression<Func<EntityBuilder<TJoinEntity>>>)
Adds a OUTER APPLY over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<TEntity, TJoinEntity> OuterApply<TEntity, TJoinEntity>(this EntityBuilder<TEntity> builder, Expression<Func<EntityBuilder<TJoinEntity>>> source)
Parameters
builderEntityBuilder<TEntity>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<TJoinEntity>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<TEntity, TJoinEntity>
A builder over the joined projection.
Type Parameters
TEntityThe projection type of the receiver.
TJoinEntityThe mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
OuterApply<T1, T2, T3>(JoinedEntityBuilder<T1, T2>, Expression<Func<EntityBuilder<T3>>>)
Adds a OUTER APPLY over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<T1, T2, T3> OuterApply<T1, T2, T3>(this JoinedEntityBuilder<T1, T2> builder, Expression<Func<EntityBuilder<T3>>> source)
Parameters
builderJoinedEntityBuilder<T1, T2>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T3>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<T1, T2, T3>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3The mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
OuterApply<T1, T2, T3, T4>(JoinedEntityBuilder<T1, T2, T3>, Expression<Func<EntityBuilder<T4>>>)
Adds a OUTER APPLY over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<T1, T2, T3, T4> OuterApply<T1, T2, T3, T4>(this JoinedEntityBuilder<T1, T2, T3> builder, Expression<Func<EntityBuilder<T4>>> source)
Parameters
builderJoinedEntityBuilder<T1, T2, T3>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T4>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4The mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
OuterApply<T1, T2, T3, T4, T5>(JoinedEntityBuilder<T1, T2, T3, T4>, Expression<Func<EntityBuilder<T5>>>)
Adds a OUTER APPLY over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5> OuterApply<T1, T2, T3, T4, T5>(this JoinedEntityBuilder<T1, T2, T3, T4> builder, Expression<Func<EntityBuilder<T5>>> source)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T5>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5The mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
OuterApply<T1, T2, T3, T4, T5, T6>(JoinedEntityBuilder<T1, T2, T3, T4, T5>, Expression<Func<EntityBuilder<T6>>>)
Adds a OUTER APPLY over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6> OuterApply<T1, T2, T3, T4, T5, T6>(this JoinedEntityBuilder<T1, T2, T3, T4, T5> builder, Expression<Func<EntityBuilder<T6>>> source)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T6>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6The mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
OuterApply<T1, T2, T3, T4, T5, T6, T7>(JoinedEntityBuilder<T1, T2, T3, T4, T5, T6>, Expression<Func<EntityBuilder<T7>>>)
Adds a OUTER APPLY over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7> OuterApply<T1, T2, T3, T4, T5, T6, T7>(this JoinedEntityBuilder<T1, T2, T3, T4, T5, T6> builder, Expression<Func<EntityBuilder<T7>>> source)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5, T6>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T7>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6A projection element type of the receiver.
T7The mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
OuterApply<T1, T2, T3, T4, T5, T6, T7, T8>(JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>, Expression<Func<EntityBuilder<T8>>>)
Adds a OUTER APPLY over a runtime table-valued-function source supplied as an expression; there is no ON condition.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7, T8> OuterApply<T1, T2, T3, T4, T5, T6, T7, T8>(this JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7> builder, Expression<Func<EntityBuilder<T8>>> source)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T8>>>The expression that calls the runtime factory.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7, T8>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6A projection element type of the receiver.
T7A projection element type of the receiver.
T8The mapped row type the function returns.
Exceptions
- ArgumentNullException
builderorsourceis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
RightJoin<TJoinEntity>(EntityBuilder, Expression<Func<EntityBuilder<TJoinEntity>>>, Expression<Func<TableAlias, TJoinEntity, bool>>)
Adds a RIGHT JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<TableAlias, TJoinEntity> RightJoin<TJoinEntity>(this EntityBuilder builder, Expression<Func<EntityBuilder<TJoinEntity>>> source, Expression<Func<TableAlias, TJoinEntity, bool>> joinCondition)
Parameters
builderEntityBuilderThe builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<TJoinEntity>>>The expression that calls the runtime factory.
joinConditionExpression<Func<TableAlias, TJoinEntity, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<TableAlias, TJoinEntity>
A builder over the joined projection.
Type Parameters
TJoinEntityThe mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
RightJoin<TJoinEntity>(EntityBuilder, Expression<Func<EntityBuilder<TJoinEntity>>>, Expression<Func<TableAlias, TJoinEntity, bool>>, Action<JoinOptions>)
Adds a RIGHT JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<TableAlias, TJoinEntity> RightJoin<TJoinEntity>(this EntityBuilder builder, Expression<Func<EntityBuilder<TJoinEntity>>> source, Expression<Func<TableAlias, TJoinEntity, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderEntityBuilderThe builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<TJoinEntity>>>The expression that calls the runtime factory.
joinConditionExpression<Func<TableAlias, TJoinEntity, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<TableAlias, TJoinEntity>
A builder over the joined projection.
Type Parameters
TJoinEntityThe mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
RightJoin<TEntity, TJoinEntity>(EntityBuilder<TEntity>, Expression<Func<EntityBuilder<TJoinEntity>>>, Expression<Func<TEntity, TJoinEntity, bool>>)
Adds a RIGHT JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<TEntity, TJoinEntity> RightJoin<TEntity, TJoinEntity>(this EntityBuilder<TEntity> builder, Expression<Func<EntityBuilder<TJoinEntity>>> source, Expression<Func<TEntity, TJoinEntity, bool>> joinCondition)
Parameters
builderEntityBuilder<TEntity>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<TJoinEntity>>>The expression that calls the runtime factory.
joinConditionExpression<Func<TEntity, TJoinEntity, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<TEntity, TJoinEntity>
A builder over the joined projection.
Type Parameters
TEntityThe projection type of the receiver.
TJoinEntityThe mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
RightJoin<TEntity, TJoinEntity>(EntityBuilder<TEntity>, Expression<Func<EntityBuilder<TJoinEntity>>>, Expression<Func<TEntity, TJoinEntity, bool>>, Action<JoinOptions>)
Adds a RIGHT JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<TEntity, TJoinEntity> RightJoin<TEntity, TJoinEntity>(this EntityBuilder<TEntity> builder, Expression<Func<EntityBuilder<TJoinEntity>>> source, Expression<Func<TEntity, TJoinEntity, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderEntityBuilder<TEntity>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<TJoinEntity>>>The expression that calls the runtime factory.
joinConditionExpression<Func<TEntity, TJoinEntity, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<TEntity, TJoinEntity>
A builder over the joined projection.
Type Parameters
TEntityThe projection type of the receiver.
TJoinEntityThe mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
RightJoin<T1, T2, T3>(JoinedEntityBuilder<T1, T2>, Expression<Func<EntityBuilder<T3>>>, Expression<Func<Projection<T1, T2>, T3, bool>>)
Adds a RIGHT JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3> RightJoin<T1, T2, T3>(this JoinedEntityBuilder<T1, T2> builder, Expression<Func<EntityBuilder<T3>>> source, Expression<Func<Projection<T1, T2>, T3, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T3>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2>, T3, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
RightJoin<T1, T2, T3>(JoinedEntityBuilder<T1, T2>, Expression<Func<EntityBuilder<T3>>>, Expression<Func<Projection<T1, T2>, T3, bool>>, Action<JoinOptions>)
Adds a RIGHT JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3> RightJoin<T1, T2, T3>(this JoinedEntityBuilder<T1, T2> builder, Expression<Func<EntityBuilder<T3>>> source, Expression<Func<Projection<T1, T2>, T3, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T3>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2>, T3, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
RightJoin<T1, T2, T3, T4>(JoinedEntityBuilder<T1, T2, T3>, Expression<Func<EntityBuilder<T4>>>, Expression<Func<Projection<T1, T2, T3>, T4, bool>>)
Adds a RIGHT JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3, T4> RightJoin<T1, T2, T3, T4>(this JoinedEntityBuilder<T1, T2, T3> builder, Expression<Func<EntityBuilder<T4>>> source, Expression<Func<Projection<T1, T2, T3>, T4, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2, T3>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T4>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3>, T4, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
RightJoin<T1, T2, T3, T4>(JoinedEntityBuilder<T1, T2, T3>, Expression<Func<EntityBuilder<T4>>>, Expression<Func<Projection<T1, T2, T3>, T4, bool>>, Action<JoinOptions>)
Adds a RIGHT JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3, T4> RightJoin<T1, T2, T3, T4>(this JoinedEntityBuilder<T1, T2, T3> builder, Expression<Func<EntityBuilder<T4>>> source, Expression<Func<Projection<T1, T2, T3>, T4, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2, T3>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T4>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3>, T4, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3, T4>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
RightJoin<T1, T2, T3, T4, T5>(JoinedEntityBuilder<T1, T2, T3, T4>, Expression<Func<EntityBuilder<T5>>>, Expression<Func<Projection<T1, T2, T3, T4>, T5, bool>>)
Adds a RIGHT JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5> RightJoin<T1, T2, T3, T4, T5>(this JoinedEntityBuilder<T1, T2, T3, T4> builder, Expression<Func<EntityBuilder<T5>>> source, Expression<Func<Projection<T1, T2, T3, T4>, T5, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T5>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4>, T5, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
RightJoin<T1, T2, T3, T4, T5>(JoinedEntityBuilder<T1, T2, T3, T4>, Expression<Func<EntityBuilder<T5>>>, Expression<Func<Projection<T1, T2, T3, T4>, T5, bool>>, Action<JoinOptions>)
Adds a RIGHT JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5> RightJoin<T1, T2, T3, T4, T5>(this JoinedEntityBuilder<T1, T2, T3, T4> builder, Expression<Func<EntityBuilder<T5>>> source, Expression<Func<Projection<T1, T2, T3, T4>, T5, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T5>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4>, T5, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
RightJoin<T1, T2, T3, T4, T5, T6>(JoinedEntityBuilder<T1, T2, T3, T4, T5>, Expression<Func<EntityBuilder<T6>>>, Expression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>>)
Adds a RIGHT JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6> RightJoin<T1, T2, T3, T4, T5, T6>(this JoinedEntityBuilder<T1, T2, T3, T4, T5> builder, Expression<Func<EntityBuilder<T6>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T6>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
RightJoin<T1, T2, T3, T4, T5, T6>(JoinedEntityBuilder<T1, T2, T3, T4, T5>, Expression<Func<EntityBuilder<T6>>>, Expression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>>, Action<JoinOptions>)
Adds a RIGHT JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6> RightJoin<T1, T2, T3, T4, T5, T6>(this JoinedEntityBuilder<T1, T2, T3, T4, T5> builder, Expression<Func<EntityBuilder<T6>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T6>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5>, T6, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
RightJoin<T1, T2, T3, T4, T5, T6, T7>(JoinedEntityBuilder<T1, T2, T3, T4, T5, T6>, Expression<Func<EntityBuilder<T7>>>, Expression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>>)
Adds a RIGHT JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7> RightJoin<T1, T2, T3, T4, T5, T6, T7>(this JoinedEntityBuilder<T1, T2, T3, T4, T5, T6> builder, Expression<Func<EntityBuilder<T7>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5, T6>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T7>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6A projection element type of the receiver.
T7The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
RightJoin<T1, T2, T3, T4, T5, T6, T7>(JoinedEntityBuilder<T1, T2, T3, T4, T5, T6>, Expression<Func<EntityBuilder<T7>>>, Expression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>>, Action<JoinOptions>)
Adds a RIGHT JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7> RightJoin<T1, T2, T3, T4, T5, T6, T7>(this JoinedEntityBuilder<T1, T2, T3, T4, T5, T6> builder, Expression<Func<EntityBuilder<T7>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5, T6>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T7>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5, T6>, T7, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6A projection element type of the receiver.
T7The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
RightJoin<T1, T2, T3, T4, T5, T6, T7, T8>(JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>, Expression<Func<EntityBuilder<T8>>>, Expression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>>)
Adds a RIGHT JOIN over a runtime table-valued-function source supplied as an expression.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7, T8> RightJoin<T1, T2, T3, T4, T5, T6, T7, T8>(this JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7> builder, Expression<Func<EntityBuilder<T8>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>> joinCondition)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T8>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>>The join predicate over the two sources.
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7, T8>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6A projection element type of the receiver.
T7A projection element type of the receiver.
T8The mapped row type the function returns.
Exceptions
- ArgumentNullException
builder,sourceorjoinConditionis null.- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.
RightJoin<T1, T2, T3, T4, T5, T6, T7, T8>(JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>, Expression<Func<EntityBuilder<T8>>>, Expression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>>, Action<JoinOptions>)
Adds a RIGHT JOIN over a runtime table-valued-function source with per-join configuration.
public static JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7, T8> RightJoin<T1, T2, T3, T4, T5, T6, T7, T8>(this JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7> builder, Expression<Func<EntityBuilder<T8>>> source, Expression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>> joinCondition, Action<JoinOptions> configure)
Parameters
builderJoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7>The builder whose join chain is extended.
sourceExpression<Func<EntityBuilder<T8>>>The expression that calls the runtime factory.
joinConditionExpression<Func<Projection<T1, T2, T3, T4, T5, T6, T7>, T8, bool>>The join predicate over the two sources.
configureAction<JoinOptions>Per-join configuration, for example
j => j.WithJoinHint("loop").
Returns
- JoinedEntityBuilder<T1, T2, T3, T4, T5, T6, T7, T8>
A builder over the joined projection.
Type Parameters
T1A projection element type of the receiver.
T2A projection element type of the receiver.
T3A projection element type of the receiver.
T4A projection element type of the receiver.
T5A projection element type of the receiver.
T6A projection element type of the receiver.
T7A projection element type of the receiver.
T8The mapped row type the function returns.
Exceptions
- ArgumentNullException
A required argument is null.
- NotSupportedException
The expression is not a direct runtime-factory call or lost its argument provenance.