mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2026-01-19 17:51:36 +08:00
Optimized grammar Join
This commit is contained in:
@@ -1,16 +1,65 @@
|
|||||||
using System;
|
using System;
|
||||||
using System.Collections.Generic;
|
using System.Collections.Generic;
|
||||||
using System.Linq;
|
using System.Linq;
|
||||||
|
using System.Linq.Expressions;
|
||||||
using System.Text;
|
using System.Text;
|
||||||
|
|
||||||
namespace SqlSugar
|
namespace SqlSugar
|
||||||
{
|
{
|
||||||
public class JoinQueryInfo
|
public class JoinQueryInfo
|
||||||
{
|
{
|
||||||
public JoinType JoinType{ get; set; }
|
public JoinType JoinType { get; set; }
|
||||||
public string TableName { get; set; }
|
public string TableName { get; set; }
|
||||||
public string ShortName { get; set; }
|
public string ShortName { get; set; }
|
||||||
public int JoinIndex { get; set; }
|
public int JoinIndex { get; set; }
|
||||||
public string JoinWhere { get; set; }
|
public string JoinWhere { get; set; }
|
||||||
}
|
}
|
||||||
|
public class JoinQueryInfos
|
||||||
|
{
|
||||||
|
private JoinQueryInfos() { }
|
||||||
|
public JoinQueryInfos(JoinType joinType, bool whereExpress)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
public JoinQueryInfos(JoinType joinType, bool whereExpress, JoinType joinType2, bool whereExpress2)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
public JoinQueryInfos(JoinType joinType, bool whereExpress, JoinType joinType2, bool whereExpress2, JoinType joinType3, bool whereExpress3)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
public JoinQueryInfos(JoinType joinType, bool whereExpress, JoinType joinType2, bool whereExpress2, JoinType joinType3, bool whereExpress3, JoinType joinType4, bool whereExpress4)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
public JoinQueryInfos(JoinType joinType, bool whereExpress, JoinType joinType2, bool whereExpress2, JoinType joinType3, bool whereExpress3, JoinType joinType4, bool whereExpress4, JoinType joinType5, bool whereExpress5)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
public JoinQueryInfos(JoinType joinType, bool whereExpress, JoinType joinType2, bool whereExpress2, JoinType joinType3, bool whereExpress3, JoinType joinType4, bool whereExpress4, JoinType joinType5, bool whereExpress5, JoinType joinType6, bool whereExpress6)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
public JoinQueryInfos(JoinType joinType, bool whereExpress, JoinType joinType2, bool whereExpress2, JoinType joinType3, bool whereExpress3, JoinType joinType4, bool whereExpress4, JoinType joinType5, bool whereExpress5, JoinType joinType6, bool whereExpress6, JoinType joinType7, bool whereExpress7)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
public JoinQueryInfos(JoinType joinType, bool whereExpress, JoinType joinType2, bool whereExpress2, JoinType joinType3, bool whereExpress3, JoinType joinType4, bool whereExpress4, JoinType joinType5, bool whereExpress5, JoinType joinType6, bool whereExpress6, JoinType joinType7, bool whereExpress7, JoinType joinType8, bool whereExpress8)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
public JoinQueryInfos(JoinType joinType, bool whereExpress, JoinType joinType2, bool whereExpress2, JoinType joinType3, bool whereExpress3, JoinType joinType4, bool whereExpress4, JoinType joinType5, bool whereExpress5, JoinType joinType6, bool whereExpress6, JoinType joinType7, bool whereExpress7, JoinType joinType8, bool whereExpress8, JoinType joinType9, bool whereExpress9)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
public JoinQueryInfos(JoinType joinType, bool whereExpress, JoinType joinType2, bool whereExpress2, JoinType joinType3, bool whereExpress3, JoinType joinType4, bool whereExpress4, JoinType joinType5, bool whereExpress5, JoinType joinType6, bool whereExpress6, JoinType joinType7, bool whereExpress7, JoinType joinType8, bool whereExpress8, JoinType joinType9, bool whereExpress9, JoinType joinType10, bool whereExpress10)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
public JoinQueryInfos(JoinType joinType, bool whereExpress, JoinType joinType2, bool whereExpress2, JoinType joinType3, bool whereExpress3, JoinType joinType4, bool whereExpress4, JoinType joinType5, bool whereExpress5, JoinType joinType6, bool whereExpress6, JoinType joinType7, bool whereExpress7, JoinType joinType8, bool whereExpress8, JoinType joinType9, bool whereExpress9, JoinType joinType10, bool whereExpress10, JoinType joinType11, bool whereExpress11)
|
||||||
|
{
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -23,7 +23,7 @@ namespace SqlSugar
|
|||||||
Check.ThrowNotSupportedException(expression.ToString());
|
Check.ThrowNotSupportedException(expression.ToString());
|
||||||
break;
|
break;
|
||||||
case ResolveExpressType.SelectSingle:
|
case ResolveExpressType.SelectSingle:
|
||||||
Check.Exception(expression.Type == UtilConstants.DateType, "ThrowNotSupportedException {0} ",expression.ToString());
|
Check.Exception(expression.Type == UtilConstants.DateType, "ThrowNotSupportedException {0} ", expression.ToString());
|
||||||
Select(expression, parameter, true);
|
Select(expression, parameter, true);
|
||||||
break;
|
break;
|
||||||
case ResolveExpressType.SelectMultiple:
|
case ResolveExpressType.SelectMultiple:
|
||||||
@@ -42,6 +42,30 @@ namespace SqlSugar
|
|||||||
base.Start();
|
base.Start();
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case ResolveExpressType.Join:
|
||||||
|
base.Context.ResolveType = ResolveExpressType.WhereMultiple;
|
||||||
|
int i = 0;
|
||||||
|
foreach (var item in expression.Arguments)
|
||||||
|
{
|
||||||
|
if (item.Type!=typeof(JoinType))
|
||||||
|
{
|
||||||
|
base.Expression = item;
|
||||||
|
base.Start();
|
||||||
|
}
|
||||||
|
if (item.Type == typeof(JoinType))
|
||||||
|
{
|
||||||
|
if (i > 0)
|
||||||
|
{
|
||||||
|
base.Context.Result.Append("," + item.ToString()+ ",");
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
base.Context.Result.Append(item.ToString() + ",");
|
||||||
|
}
|
||||||
|
++i;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -140,6 +140,14 @@ namespace SqlSugar
|
|||||||
this.CreateQueryJoin(joinExpression, types, queryable);
|
this.CreateQueryJoin(joinExpression, types, queryable);
|
||||||
return queryable;
|
return queryable;
|
||||||
}
|
}
|
||||||
|
public virtual ISugarQueryable<T, T2> Queryable<T, T2>(Expression<Func<T, T2, JoinQueryInfos>> joinExpression)
|
||||||
|
{
|
||||||
|
InitMppingInfo<T, T2>();
|
||||||
|
var types = new Type[] { typeof(T2) };
|
||||||
|
var queryable = InstanceFactory.GetQueryable<T, T2>(this.CurrentConnectionConfig);
|
||||||
|
this.CreateQueryJoin(joinExpression, types, queryable);
|
||||||
|
return queryable;
|
||||||
|
}
|
||||||
public virtual ISugarQueryable<T, T2, T3> Queryable<T, T2, T3>(Expression<Func<T, T2, T3, object[]>> joinExpression)
|
public virtual ISugarQueryable<T, T2, T3> Queryable<T, T2, T3>(Expression<Func<T, T2, T3, object[]>> joinExpression)
|
||||||
{
|
{
|
||||||
InitMppingInfo<T, T2, T3>();
|
InitMppingInfo<T, T2, T3>();
|
||||||
@@ -148,6 +156,14 @@ namespace SqlSugar
|
|||||||
this.CreateQueryJoin(joinExpression, types, queryable);
|
this.CreateQueryJoin(joinExpression, types, queryable);
|
||||||
return queryable;
|
return queryable;
|
||||||
}
|
}
|
||||||
|
public virtual ISugarQueryable<T, T2, T3> Queryable<T, T2, T3>(Expression<Func<T, T2, T3,JoinQueryInfos>> joinExpression)
|
||||||
|
{
|
||||||
|
InitMppingInfo<T, T2, T3>();
|
||||||
|
var types = new Type[] { typeof(T2), typeof(T3) };
|
||||||
|
var queryable = InstanceFactory.GetQueryable<T, T2, T3>(this.CurrentConnectionConfig);
|
||||||
|
this.CreateQueryJoin(joinExpression, types, queryable);
|
||||||
|
return queryable;
|
||||||
|
}
|
||||||
public virtual ISugarQueryable<T, T2, T3, T4> Queryable<T, T2, T3, T4>(Expression<Func<T, T2, T3, T4, object[]>> joinExpression)
|
public virtual ISugarQueryable<T, T2, T3, T4> Queryable<T, T2, T3, T4>(Expression<Func<T, T2, T3, T4, object[]>> joinExpression)
|
||||||
{
|
{
|
||||||
InitMppingInfo<T, T2, T3, T4>();
|
InitMppingInfo<T, T2, T3, T4>();
|
||||||
@@ -156,6 +172,14 @@ namespace SqlSugar
|
|||||||
this.CreateQueryJoin(joinExpression, types, queryable);
|
this.CreateQueryJoin(joinExpression, types, queryable);
|
||||||
return queryable;
|
return queryable;
|
||||||
}
|
}
|
||||||
|
public virtual ISugarQueryable<T, T2, T3, T4> Queryable<T, T2, T3, T4>(Expression<Func<T, T2, T3, T4,JoinQueryInfos>> joinExpression)
|
||||||
|
{
|
||||||
|
InitMppingInfo<T, T2, T3, T4>();
|
||||||
|
var types = new Type[] { typeof(T2), typeof(T3), typeof(T4) };
|
||||||
|
var queryable = InstanceFactory.GetQueryable<T, T2, T3, T4>(this.CurrentConnectionConfig);
|
||||||
|
this.CreateQueryJoin(joinExpression, types, queryable);
|
||||||
|
return queryable;
|
||||||
|
}
|
||||||
public virtual ISugarQueryable<T, T2, T3, T4, T5> Queryable<T, T2, T3, T4, T5>(Expression<Func<T, T2, T3, T4, T5, object[]>> joinExpression)
|
public virtual ISugarQueryable<T, T2, T3, T4, T5> Queryable<T, T2, T3, T4, T5>(Expression<Func<T, T2, T3, T4, T5, object[]>> joinExpression)
|
||||||
{
|
{
|
||||||
InitMppingInfo<T, T2, T3, T4, T5>();
|
InitMppingInfo<T, T2, T3, T4, T5>();
|
||||||
@@ -164,6 +188,14 @@ namespace SqlSugar
|
|||||||
this.CreateQueryJoin(joinExpression, types, queryable);
|
this.CreateQueryJoin(joinExpression, types, queryable);
|
||||||
return queryable;
|
return queryable;
|
||||||
}
|
}
|
||||||
|
public virtual ISugarQueryable<T, T2, T3, T4, T5> Queryable<T, T2, T3, T4, T5>(Expression<Func<T, T2, T3, T4, T5,JoinQueryInfos>> joinExpression)
|
||||||
|
{
|
||||||
|
InitMppingInfo<T, T2, T3, T4, T5>();
|
||||||
|
var types = new Type[] { typeof(T2), typeof(T3), typeof(T4), typeof(T5) };
|
||||||
|
var queryable = InstanceFactory.GetQueryable<T, T2, T3, T4, T5>(this.CurrentConnectionConfig);
|
||||||
|
this.CreateQueryJoin(joinExpression, types, queryable);
|
||||||
|
return queryable;
|
||||||
|
}
|
||||||
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6> Queryable<T, T2, T3, T4, T5, T6>(Expression<Func<T, T2, T3, T4, T5, T6, object[]>> joinExpression)
|
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6> Queryable<T, T2, T3, T4, T5, T6>(Expression<Func<T, T2, T3, T4, T5, T6, object[]>> joinExpression)
|
||||||
{
|
{
|
||||||
InitMppingInfo<T, T2, T3, T4, T5, T6>();
|
InitMppingInfo<T, T2, T3, T4, T5, T6>();
|
||||||
@@ -172,6 +204,14 @@ namespace SqlSugar
|
|||||||
this.CreateQueryJoin(joinExpression, types, queryable);
|
this.CreateQueryJoin(joinExpression, types, queryable);
|
||||||
return queryable;
|
return queryable;
|
||||||
}
|
}
|
||||||
|
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6> Queryable<T, T2, T3, T4, T5, T6>(Expression<Func<T, T2, T3, T4, T5, T6, JoinQueryInfos>> joinExpression)
|
||||||
|
{
|
||||||
|
InitMppingInfo<T, T2, T3, T4, T5, T6>();
|
||||||
|
var types = new Type[] { typeof(T2), typeof(T3), typeof(T4), typeof(T5), typeof(T6) };
|
||||||
|
var queryable = InstanceFactory.GetQueryable<T, T2, T3, T4, T5, T6>(this.CurrentConnectionConfig);
|
||||||
|
this.CreateQueryJoin(joinExpression, types, queryable);
|
||||||
|
return queryable;
|
||||||
|
}
|
||||||
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7> Queryable<T, T2, T3, T4, T5, T6, T7>(Expression<Func<T, T2, T3, T4, T5, T6, T7, object[]>> joinExpression)
|
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7> Queryable<T, T2, T3, T4, T5, T6, T7>(Expression<Func<T, T2, T3, T4, T5, T6, T7, object[]>> joinExpression)
|
||||||
{
|
{
|
||||||
InitMppingInfo<T, T2, T3, T4, T5, T6, T7>();
|
InitMppingInfo<T, T2, T3, T4, T5, T6, T7>();
|
||||||
@@ -180,6 +220,14 @@ namespace SqlSugar
|
|||||||
this.CreateQueryJoin(joinExpression, types, queryable);
|
this.CreateQueryJoin(joinExpression, types, queryable);
|
||||||
return queryable;
|
return queryable;
|
||||||
}
|
}
|
||||||
|
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7> Queryable<T, T2, T3, T4, T5, T6, T7>(Expression<Func<T, T2, T3, T4, T5, T6, T7, JoinQueryInfos>> joinExpression)
|
||||||
|
{
|
||||||
|
InitMppingInfo<T, T2, T3, T4, T5, T6, T7>();
|
||||||
|
var types = new Type[] { typeof(T2), typeof(T3), typeof(T4), typeof(T5), typeof(T6), typeof(T7) };
|
||||||
|
var queryable = InstanceFactory.GetQueryable<T, T2, T3, T4, T5, T6, T7>(this.CurrentConnectionConfig);
|
||||||
|
this.CreateQueryJoin(joinExpression, types, queryable);
|
||||||
|
return queryable;
|
||||||
|
}
|
||||||
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> Queryable<T, T2, T3, T4, T5, T6, T7, T8>(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, object[]>> joinExpression)
|
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> Queryable<T, T2, T3, T4, T5, T6, T7, T8>(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, object[]>> joinExpression)
|
||||||
{
|
{
|
||||||
InitMppingInfo<T, T2, T3, T4, T5, T6, T7, T8>();
|
InitMppingInfo<T, T2, T3, T4, T5, T6, T7, T8>();
|
||||||
@@ -188,6 +236,14 @@ namespace SqlSugar
|
|||||||
this.CreateQueryJoin(joinExpression, types, queryable);
|
this.CreateQueryJoin(joinExpression, types, queryable);
|
||||||
return queryable;
|
return queryable;
|
||||||
}
|
}
|
||||||
|
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8> Queryable<T, T2, T3, T4, T5, T6, T7, T8>(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, JoinQueryInfos>> joinExpression)
|
||||||
|
{
|
||||||
|
InitMppingInfo<T, T2, T3, T4, T5, T6, T7, T8>();
|
||||||
|
var types = new Type[] { typeof(T2), typeof(T3), typeof(T4), typeof(T5), typeof(T6), typeof(T7), typeof(T8) };
|
||||||
|
var queryable = InstanceFactory.GetQueryable<T, T2, T3, T4, T5, T6, T7, T8>(this.CurrentConnectionConfig);
|
||||||
|
this.CreateQueryJoin(joinExpression, types, queryable);
|
||||||
|
return queryable;
|
||||||
|
}
|
||||||
#region 9-12
|
#region 9-12
|
||||||
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> Queryable<T, T2, T3, T4, T5, T6, T7, T8, T9>(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, object[]>> joinExpression)
|
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> Queryable<T, T2, T3, T4, T5, T6, T7, T8, T9>(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, object[]>> joinExpression)
|
||||||
{
|
{
|
||||||
@@ -197,6 +253,14 @@ namespace SqlSugar
|
|||||||
this.CreateQueryJoin(joinExpression, types, queryable);
|
this.CreateQueryJoin(joinExpression, types, queryable);
|
||||||
return queryable;
|
return queryable;
|
||||||
}
|
}
|
||||||
|
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9> Queryable<T, T2, T3, T4, T5, T6, T7, T8, T9>(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, JoinQueryInfos>> joinExpression)
|
||||||
|
{
|
||||||
|
InitMppingInfo<T, T2, T3, T4, T5, T6, T7, T8, T9>();
|
||||||
|
var types = new Type[] { typeof(T2), typeof(T3), typeof(T4), typeof(T5), typeof(T6), typeof(T7), typeof(T8), typeof(T9) };
|
||||||
|
var queryable = InstanceFactory.GetQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9>(this.CurrentConnectionConfig);
|
||||||
|
this.CreateQueryJoin(joinExpression, types, queryable);
|
||||||
|
return queryable;
|
||||||
|
}
|
||||||
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> Queryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10>(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, object[]>> joinExpression)
|
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> Queryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10>(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, object[]>> joinExpression)
|
||||||
{
|
{
|
||||||
InitMppingInfo<T, T2, T3, T4, T5, T6, T7, T8, T9, T10>();
|
InitMppingInfo<T, T2, T3, T4, T5, T6, T7, T8, T9, T10>();
|
||||||
@@ -205,6 +269,14 @@ namespace SqlSugar
|
|||||||
this.CreateQueryJoin(joinExpression, types, queryable);
|
this.CreateQueryJoin(joinExpression, types, queryable);
|
||||||
return queryable;
|
return queryable;
|
||||||
}
|
}
|
||||||
|
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10> Queryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10>(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, JoinQueryInfos>> joinExpression)
|
||||||
|
{
|
||||||
|
InitMppingInfo<T, T2, T3, T4, T5, T6, T7, T8, T9, T10>();
|
||||||
|
var types = new Type[] { typeof(T2), typeof(T3), typeof(T4), typeof(T5), typeof(T6), typeof(T7), typeof(T8), typeof(T9), typeof(T10) };
|
||||||
|
var queryable = InstanceFactory.GetQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10>(this.CurrentConnectionConfig);
|
||||||
|
this.CreateQueryJoin(joinExpression, types, queryable);
|
||||||
|
return queryable;
|
||||||
|
}
|
||||||
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Queryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, object[]>> joinExpression)
|
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Queryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, object[]>> joinExpression)
|
||||||
{
|
{
|
||||||
InitMppingInfo<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>();
|
InitMppingInfo<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>();
|
||||||
@@ -213,6 +285,14 @@ namespace SqlSugar
|
|||||||
this.CreateQueryJoin(joinExpression, types, queryable);
|
this.CreateQueryJoin(joinExpression, types, queryable);
|
||||||
return queryable;
|
return queryable;
|
||||||
}
|
}
|
||||||
|
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11> Queryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11,JoinQueryInfos>> joinExpression)
|
||||||
|
{
|
||||||
|
InitMppingInfo<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>();
|
||||||
|
var types = new Type[] { typeof(T2), typeof(T3), typeof(T4), typeof(T5), typeof(T6), typeof(T7), typeof(T8), typeof(T9), typeof(T10), typeof(T11) };
|
||||||
|
var queryable = InstanceFactory.GetQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11>(this.CurrentConnectionConfig);
|
||||||
|
this.CreateQueryJoin(joinExpression, types, queryable);
|
||||||
|
return queryable;
|
||||||
|
}
|
||||||
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Queryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, object[]>> joinExpression)
|
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Queryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, object[]>> joinExpression)
|
||||||
{
|
{
|
||||||
InitMppingInfo<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>();
|
InitMppingInfo<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>();
|
||||||
@@ -221,6 +301,14 @@ namespace SqlSugar
|
|||||||
this.CreateQueryJoin(joinExpression, types, queryable);
|
this.CreateQueryJoin(joinExpression, types, queryable);
|
||||||
return queryable;
|
return queryable;
|
||||||
}
|
}
|
||||||
|
public virtual ISugarQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12> Queryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(Expression<Func<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, JoinQueryInfos>> joinExpression)
|
||||||
|
{
|
||||||
|
InitMppingInfo<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>();
|
||||||
|
var types = new Type[] { typeof(T2), typeof(T3), typeof(T4), typeof(T5), typeof(T6), typeof(T7), typeof(T8), typeof(T9), typeof(T10), typeof(T11), typeof(T12) };
|
||||||
|
var queryable = InstanceFactory.GetQueryable<T, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12>(this.CurrentConnectionConfig);
|
||||||
|
this.CreateQueryJoin(joinExpression, types, queryable);
|
||||||
|
return queryable;
|
||||||
|
}
|
||||||
#endregion
|
#endregion
|
||||||
public virtual ISugarQueryable<T, T2> Queryable<T, T2>(Expression<Func<T, T2, bool>> joinExpression) where T : class, new()
|
public virtual ISugarQueryable<T, T2> Queryable<T, T2>(Expression<Func<T, T2, bool>> joinExpression) where T : class, new()
|
||||||
{
|
{
|
||||||
|
|||||||
Reference in New Issue
Block a user