public FluentSqlBuilder <TTableJoin> AddJoinCommon <TTableLeft, TTableJoin>(Expression <Func <TTableLeft, TTableJoin, bool> > expression, JoinType joinType, TargetToSelect targetToSelect, string tableAlias = null) { var sqlBuilderFluentJoin = new FluentSqlBuilder <TTableJoin>(_sqlQueryBuilder, _resolver, targetToSelect); _resolver.AddJoinByType(expression, joinType, tableAlias); return(sqlBuilderFluentJoin); }
private void DefineTargetToSelect(TargetToSelect targetToSelect) { _targetToSelect = targetToSelect; }
public FluentSqlBuilder <TTableJoin> AddJoinWithDefineLeftTable <TTableLeft, TTableJoin>(Expression <Func <TTableLeft, TTableJoin, bool> > expression, JoinType joinType, TargetToSelect targetToSelect, string tableAlias = null) { var sqlBuilderFluentJoin = AddJoinCommon(expression, joinType, targetToSelect, tableAlias); return(sqlBuilderFluentJoin); }
internal FluentSqlBuilder(FluentSqlQueryBuilder sqlQueryBuilder, LambdaResolver resolver, TargetToSelect targetToSelect) { _sqlQueryBuilder = sqlQueryBuilder; _resolver = resolver; DefineTargetToSelect(targetToSelect); }