mirror of
https://gitee.com/dotnetchina/SqlSugar.git
synced 2025-09-19 01:58:13 +08:00
Update demo
This commit is contained in:
@@ -258,10 +258,12 @@ namespace OrmTest
|
||||
|
||||
var list2 = db.Queryable<Order>().Where(it =>
|
||||
SqlFunc.Subqueryable<OrderItem>()
|
||||
.LeftJoin<OrderItem>((i,y)=>i.ItemId==y.ItemId&&2==2)
|
||||
.LeftJoin<OrderItem>((i,z)=>i.ItemId==z.ItemId)
|
||||
.InnerJoin<OrderItem>((i,y,z) => i.ItemId == z.ItemId)
|
||||
.Where((i ,y,z)=>i.ItemId==z.ItemId)
|
||||
.Any()
|
||||
.InnerJoin<OrderItem>((i, y, z,x) => i.ItemId == z.ItemId)
|
||||
.InnerJoin<OrderItem>((i, y, z, x ,h) => i.ItemId == z.ItemId)
|
||||
.Where((i, z) => i.ItemId == z.ItemId)
|
||||
.Any()
|
||||
).ToList();
|
||||
;
|
||||
var list3 = db.Queryable<Order>().Select(it => new
|
||||
|
@@ -0,0 +1,40 @@
|
||||
//@{
|
||||
// var count = 9;
|
||||
// var T = "";
|
||||
// var Tn = "";
|
||||
// for (int i = 0; i < count; i++)
|
||||
// {
|
||||
// T += "T" + (i + 1) + ",";
|
||||
// }
|
||||
// Tn = T + "JoinType";
|
||||
// T = T.TrimEnd(',');
|
||||
//}
|
||||
//public class Subqueryable<@T> : Subqueryable<T1> where T1 : class, new()
|
||||
//{
|
||||
// public Subqueryable<@Tn> InnerJoin<JoinType>(Func<@Tn, bool> expression)
|
||||
// {
|
||||
// return new Subqueryable<@Tn>();
|
||||
// }
|
||||
// public Subqueryable<@Tn> LeftJoin<JoinType>(Func<@Tn, bool> expression)
|
||||
// {
|
||||
// return new Subqueryable<@Tn>();
|
||||
// }
|
||||
// @for(int i = 0; i<count; i++)
|
||||
// {
|
||||
// var itemcount = i + 1;
|
||||
|
||||
// var wtn = "";
|
||||
|
||||
// for (int j = 0; j<itemcount; j++)
|
||||
// {
|
||||
// wtn += "T" + (j+1) + ",";
|
||||
// }
|
||||
//wtn = wtn.TrimEnd(',');
|
||||
// @:public @(i == 0 ? "new" : "") Subqueryable<@T> Where(Func<@wtn, bool> expression)
|
||||
// @:{
|
||||
// @:return this;
|
||||
// @:}
|
||||
|
||||
//}
|
||||
//}
|
||||
|
@@ -5,65 +5,270 @@ using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace SqlSugar
|
||||
{
|
||||
public class Subqueryable<T, T2, T3, T4, T5> : Subqueryable<T> where T : class, new()
|
||||
{ public class Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8,T9,T10> : Subqueryable<T1> where T1 : class, new()
|
||||
{ }
|
||||
public class Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8, T9> : Subqueryable<T1> where T1 : class, new()
|
||||
{
|
||||
}
|
||||
public class Subqueryable<T, T2, T3, T4> : Subqueryable<T> where T : class, new()
|
||||
{
|
||||
public Subqueryable<T, T2, T3, JoinType> InnerJoin<JoinType>(Func<T, T2, T3, JoinType, bool> expression)
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8, T9, JoinType> InnerJoin<JoinType>(Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, JoinType, bool> expression)
|
||||
{
|
||||
return new Subqueryable<T, T2, T3, JoinType>();
|
||||
return new Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8, T9, JoinType>();
|
||||
}
|
||||
public Subqueryable<T, T2, T3, JoinType> LeftJoin<JoinType>(Func<T, T2, T3, JoinType, bool> expression)
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8, T9, JoinType> LeftJoin<JoinType>(Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, JoinType, bool> expression)
|
||||
{
|
||||
return new Subqueryable<T, T2, T3, JoinType>();
|
||||
return new Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8, T9, JoinType>();
|
||||
}
|
||||
public Subqueryable<T, T2, T3, T4, JoinType> Where(Func<T, T2, T3, T4, bool> expression)
|
||||
public new Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8, T9> Where(Func<T1, bool> expression)
|
||||
{
|
||||
return new Subqueryable<T, T2, T3, T4, JoinType>();
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T, T2, T3, T4, JoinType> Where(Func<T, T2, T3, bool> expression)
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8, T9> Where(Func<T1, T2, bool> expression)
|
||||
{
|
||||
return new Subqueryable<T, T2, T3, T4, JoinType>();
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T, T2, T3, T4, JoinType> Where(Func<T, T2, bool> expression)
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8, T9> Where(Func<T1, T2, T3, bool> expression)
|
||||
{
|
||||
return new Subqueryable<T, T2, T3, T4, JoinType>();
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8, T9> Where(Func<T1, T2, T3, T4, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8, T9> Where(Func<T1, T2, T3, T4, T5, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8, T9> Where(Func<T1, T2, T3, T4, T5, T6, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8, T9> Where(Func<T1, T2, T3, T4, T5, T6, T7, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8, T9> Where(Func<T1, T2, T3, T4, T5, T6, T7, T8, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8, T9> Where(Func<T1, T2, T3, T4, T5, T6, T7, T8, T9, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
}
|
||||
public class Subqueryable<T, T2, T3> : Subqueryable<T> where T : class, new()
|
||||
public class Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8> : Subqueryable<T1> where T1 : class, new()
|
||||
{
|
||||
public Subqueryable<T, T2, T3, JoinType> InnerJoin<JoinType>(Func<T, T2, T3, JoinType, bool> expression)
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8, JoinType> InnerJoin<JoinType>(Func<T1, T2, T3, T4, T5, T6, T7, T8, JoinType, bool> expression)
|
||||
{
|
||||
return new Subqueryable<T, T2, T3, JoinType>();
|
||||
return new Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8, JoinType>();
|
||||
}
|
||||
public Subqueryable<T, T2, T3, JoinType> LeftJoin<JoinType>(Func<T, T2, T3, JoinType, bool> expression)
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8, JoinType> LeftJoin<JoinType>(Func<T1, T2, T3, T4, T5, T6, T7, T8, JoinType, bool> expression)
|
||||
{
|
||||
return new Subqueryable<T, T2, T3, JoinType>();
|
||||
return new Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8, JoinType>();
|
||||
}
|
||||
public Subqueryable<T, T2, T3, JoinType> Where(Func<T, T2, T3, bool> expression)
|
||||
public new Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8> Where(Func<T1, bool> expression)
|
||||
{
|
||||
return new Subqueryable<T, T2, T3, JoinType>();
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T, T2, T3, JoinType> Where(Func<T, T2, bool> expression)
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8> Where(Func<T1, T2, bool> expression)
|
||||
{
|
||||
return new Subqueryable<T, T2, T3, JoinType>();
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8> Where(Func<T1, T2, T3, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8> Where(Func<T1, T2, T3, T4, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8> Where(Func<T1, T2, T3, T4, T5, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8> Where(Func<T1, T2, T3, T4, T5, T6, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8> Where(Func<T1, T2, T3, T4, T5, T6, T7, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7, T8> Where(Func<T1, T2, T3, T4, T5, T6, T7, T8, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
}
|
||||
public class Subqueryable<T, T2> : Subqueryable<T> where T : class, new()
|
||||
public class Subqueryable<T1, T2, T3, T4, T5, T6, T7> : Subqueryable<T1> where T1 : class, new()
|
||||
{
|
||||
public Subqueryable<T, T2, JoinType> InnerJoin<JoinType>(Func<T, T2, JoinType, bool> expression)
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7, JoinType> InnerJoin<JoinType>(Func<T1, T2, T3, T4, T5, T6, T7, JoinType, bool> expression)
|
||||
{
|
||||
return new Subqueryable<T, T2, JoinType>();
|
||||
return new Subqueryable<T1, T2, T3, T4, T5, T6, T7, JoinType>();
|
||||
}
|
||||
public Subqueryable<T, T2, JoinType> LeftJoin<JoinType>(Func<T, T2, JoinType, bool> expression)
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7, JoinType> LeftJoin<JoinType>(Func<T1, T2, T3, T4, T5, T6, T7, JoinType, bool> expression)
|
||||
{
|
||||
return new Subqueryable<T, T2, JoinType>();
|
||||
return new Subqueryable<T1, T2, T3, T4, T5, T6, T7, JoinType>();
|
||||
}
|
||||
public Subqueryable<T, T2, JoinType> Where(Func<T, T2, bool> expression)
|
||||
public new Subqueryable<T1, T2, T3, T4, T5, T6, T7> Where(Func<T1, bool> expression)
|
||||
{
|
||||
return new Subqueryable<T, T2, JoinType>();
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7> Where(Func<T1, T2, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7> Where(Func<T1, T2, T3, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7> Where(Func<T1, T2, T3, T4, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7> Where(Func<T1, T2, T3, T4, T5, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7> Where(Func<T1, T2, T3, T4, T5, T6, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, T7> Where(Func<T1, T2, T3, T4, T5, T6, T7, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
}
|
||||
public class Subqueryable<T1, T2, T3, T4, T5, T6> : Subqueryable<T1> where T1 : class, new()
|
||||
{
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, JoinType> InnerJoin<JoinType>(Func<T1, T2, T3, T4, T5, T6, JoinType, bool> expression)
|
||||
{
|
||||
return new Subqueryable<T1, T2, T3, T4, T5, T6, JoinType>();
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6, JoinType> LeftJoin<JoinType>(Func<T1, T2, T3, T4, T5, T6, JoinType, bool> expression)
|
||||
{
|
||||
return new Subqueryable<T1, T2, T3, T4, T5, T6, JoinType>();
|
||||
}
|
||||
public new Subqueryable<T1, T2, T3, T4, T5, T6> Where(Func<T1, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6> Where(Func<T1, T2, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6> Where(Func<T1, T2, T3, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6> Where(Func<T1, T2, T3, T4, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6> Where(Func<T1, T2, T3, T4, T5, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, T6> Where(Func<T1, T2, T3, T4, T5, T6, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
}
|
||||
public class Subqueryable<T1, T2, T3, T4, T5> : Subqueryable<T1> where T1 : class, new()
|
||||
{
|
||||
public Subqueryable<T1, T2, T3, T4, T5, JoinType> InnerJoin<JoinType>(Func<T1, T2, T3, T4, T5, JoinType, bool> expression)
|
||||
{
|
||||
return new Subqueryable<T1, T2, T3, T4, T5, JoinType>();
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5, JoinType> LeftJoin<JoinType>(Func<T1, T2, T3, T4, T5, JoinType, bool> expression)
|
||||
{
|
||||
return new Subqueryable<T1, T2, T3, T4, T5, JoinType>();
|
||||
}
|
||||
public new Subqueryable<T1, T2, T3, T4, T5> Where(Func<T1, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5> Where(Func<T1, T2, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5> Where(Func<T1, T2, T3, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5> Where(Func<T1, T2, T3, T4, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, T5> Where(Func<T1, T2, T3, T4, T5, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
}
|
||||
public class Subqueryable<T1, T2, T3, T4> : Subqueryable<T1> where T1 : class, new()
|
||||
{
|
||||
public Subqueryable<T1, T2, T3, T4, JoinType> InnerJoin<JoinType>(Func<T1, T2, T3, T4, JoinType, bool> expression)
|
||||
{
|
||||
return new Subqueryable<T1, T2, T3, T4, JoinType>();
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4, JoinType> LeftJoin<JoinType>(Func<T1, T2, T3, T4, JoinType, bool> expression)
|
||||
{
|
||||
return new Subqueryable<T1, T2, T3, T4, JoinType>();
|
||||
}
|
||||
public new Subqueryable<T1, T2, T3, T4> Where(Func<T1, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4> Where(Func<T1, T2, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4> Where(Func<T1, T2, T3, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, T4> Where(Func<T1, T2, T3, T4, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
}
|
||||
public class Subqueryable<T1, T2, T3> : Subqueryable<T1> where T1 : class, new()
|
||||
{
|
||||
public Subqueryable<T1, T2, T3, JoinType> InnerJoin<JoinType>(Func<T1, T2, T3, JoinType, bool> expression)
|
||||
{
|
||||
return new Subqueryable<T1, T2, T3, JoinType>();
|
||||
}
|
||||
public Subqueryable<T1, T2, T3, JoinType> LeftJoin<JoinType>(Func<T1, T2, T3, JoinType, bool> expression)
|
||||
{
|
||||
return new Subqueryable<T1, T2, T3, JoinType>();
|
||||
}
|
||||
public new Subqueryable<T1, T2, T3> Where(Func<T1, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3> Where(Func<T1, T2, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2, T3> Where(Func<T1, T2, T3, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
}
|
||||
public class Subqueryable<T1, T2> : Subqueryable<T1> where T1 : class, new()
|
||||
{
|
||||
public Subqueryable<T1, T2, JoinType> InnerJoin<JoinType>(Func<T1, T2, JoinType, bool> expression)
|
||||
{
|
||||
return new Subqueryable<T1, T2, JoinType>();
|
||||
}
|
||||
public Subqueryable<T1, T2, JoinType> LeftJoin<JoinType>(Func<T1, T2, JoinType, bool> expression)
|
||||
{
|
||||
return new Subqueryable<T1, T2, JoinType>();
|
||||
}
|
||||
public new Subqueryable<T1, T2> Where(Func<T1, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
public Subqueryable<T1, T2> Where(Func<T1, T2, bool> expression)
|
||||
{
|
||||
return this;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@@ -96,6 +96,7 @@
|
||||
<Compile Include="Abstract\FilterProvider\FilterProvider.cs" />
|
||||
<Compile Include="Abstract\SaveableProvider\StorageableDataTable.cs" />
|
||||
<Compile Include="Abstract\SugarProvider\SqlSugarCoreProvider.cs" />
|
||||
<Compile Include="ExpressionsToSql\Subquery\SubTemplate.cs" />
|
||||
<Compile Include="ExpressionsToSql\Subquery\SubqueryableN.cs" />
|
||||
<Compile Include="Interface\IFastBuilder.cs" />
|
||||
<Compile Include="Interface\IFastest.cs" />
|
||||
|
Reference in New Issue
Block a user