From b42f746d6f506a3478686dd876f4ab9ca200cb20 Mon Sep 17 00:00:00 2001 From: sunkaixuan <610262374@qq.com> Date: Sat, 17 Jun 2023 11:13:52 +0800 Subject: [PATCH] Synchronization code --- .../QueryableProvider/QueryableProvider.cs | 9 ++++ .../QueryableProvider02-05.cs | 36 +++++++++++++++ .../QueryableProvider06-10.cs | 45 +++++++++++++++++++ .../QueryableProvider11-12.cs | 9 ++++ .../SqlSugar/Interface/IQueryable.cs | 13 +++++- 5 files changed, 111 insertions(+), 1 deletion(-) diff --git a/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/QueryableProvider.cs b/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/QueryableProvider.cs index 2b57bc4e8..4ecd56d08 100644 --- a/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/QueryableProvider.cs +++ b/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/QueryableProvider.cs @@ -197,6 +197,15 @@ namespace SqlSugar } return result; } + public ISugarQueryable InnerJoinIF(bool isJoin, Expression> joinExpression) + { + var result = InnerJoin(joinExpression); + if (isJoin == false) + { + result.QueryBuilder.JoinQueryInfos.Remove(result.QueryBuilder.JoinQueryInfos.Last()); + } + return result; + } public ISugarQueryable LeftJoin(Expression> joinExpression) { if (MasterHasWhereFirstJoin()) diff --git a/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/QueryableProvider02-05.cs b/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/QueryableProvider02-05.cs index eada11e4a..d7f164d3f 100644 --- a/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/QueryableProvider02-05.cs +++ b/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/QueryableProvider02-05.cs @@ -29,6 +29,15 @@ namespace SqlSugar } return result; } + public ISugarQueryable InnerJoinIF(bool isJoin, Expression> joinExpression) + { + var result = InnerJoin(joinExpression); + if (isJoin == false) + { + result.QueryBuilder.JoinQueryInfos.Remove(result.QueryBuilder.JoinQueryInfos.Last()); + } + return result; + } public ISugarQueryable LeftJoin(ISugarQueryable joinQueryable, Expression> joinExpression) { this.Context.InitMappingInfo(); @@ -617,6 +626,15 @@ namespace SqlSugar } return result; } + public ISugarQueryable InnerJoinIF(bool isJoin, Expression> joinExpression) + { + var result = InnerJoin(joinExpression); + if (isJoin == false) + { + result.QueryBuilder.JoinQueryInfos.Remove(result.QueryBuilder.JoinQueryInfos.Last()); + } + return result; + } public ISugarQueryable LeftJoin(ISugarQueryable joinQueryable, Expression> joinExpression) { this.Context.InitMappingInfo(); @@ -1311,6 +1329,15 @@ namespace SqlSugar } return result; } + public ISugarQueryable InnerJoinIF(bool isJoin, Expression> joinExpression) + { + var result = InnerJoin(joinExpression); + if (isJoin == false) + { + result.QueryBuilder.JoinQueryInfos.Remove(result.QueryBuilder.JoinQueryInfos.Last()); + } + return result; + } public ISugarQueryable LeftJoin(ISugarQueryable joinQueryable, Expression> joinExpression) { this.Context.InitMappingInfo(); @@ -2027,6 +2054,15 @@ namespace SqlSugar } return result; } + public ISugarQueryable InnerJoinIF(bool isJoin, Expression> joinExpression) + { + var result = InnerJoin(joinExpression); + if (isJoin == false) + { + result.QueryBuilder.JoinQueryInfos.Remove(result.QueryBuilder.JoinQueryInfos.Last()); + } + return result; + } public ISugarQueryable LeftJoin(ISugarQueryable joinQueryable, Expression> joinExpression) { diff --git a/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/QueryableProvider06-10.cs b/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/QueryableProvider06-10.cs index 44dd629b7..8dfb08604 100644 --- a/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/QueryableProvider06-10.cs +++ b/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/QueryableProvider06-10.cs @@ -28,6 +28,15 @@ namespace SqlSugar } return result; } + public ISugarQueryable InnerJoinIF(bool isJoin, Expression> joinExpression) + { + var result = InnerJoin(joinExpression); + if (isJoin == false) + { + result.QueryBuilder.JoinQueryInfos.Remove(result.QueryBuilder.JoinQueryInfos.Last()); + } + return result; + } public ISugarQueryable LeftJoin(ISugarQueryable joinQueryable, Expression> joinExpression) { this.Context.InitMappingInfo(); @@ -732,6 +741,15 @@ namespace SqlSugar } return result; } + public ISugarQueryable InnerJoinIF(bool isJoin, Expression> joinExpression) + { + var result = InnerJoin(joinExpression); + if (isJoin == false) + { + result.QueryBuilder.JoinQueryInfos.Remove(result.QueryBuilder.JoinQueryInfos.Last()); + } + return result; + } public ISugarQueryable LeftJoin(ISugarQueryable joinQueryable, Expression> joinExpression) { this.Context.InitMappingInfo(); @@ -1438,6 +1456,15 @@ namespace SqlSugar } return result; } + public ISugarQueryable InnerJoinIF(bool isJoin, Expression> joinExpression) + { + var result = InnerJoin(joinExpression); + if (isJoin == false) + { + result.QueryBuilder.JoinQueryInfos.Remove(result.QueryBuilder.JoinQueryInfos.Last()); + } + return result; + } public ISugarQueryable LeftJoin(ISugarQueryable joinQueryable, Expression> joinExpression) { this.Context.InitMappingInfo(); @@ -2144,6 +2171,15 @@ namespace SqlSugar } return result; } + public ISugarQueryable InnerJoinIF(bool isJoin, Expression> joinExpression) + { + var result = InnerJoin(joinExpression); + if (isJoin == false) + { + result.QueryBuilder.JoinQueryInfos.Remove(result.QueryBuilder.JoinQueryInfos.Last()); + } + return result; + } public ISugarQueryable LeftJoin(ISugarQueryable joinQueryable, Expression> joinExpression) { this.Context.InitMappingInfo(); @@ -2810,6 +2846,15 @@ namespace SqlSugar } return result; } + public ISugarQueryable InnerJoinIF(bool isJoin, Expression> joinExpression) + { + var result = InnerJoin(joinExpression); + if (isJoin == false) + { + result.QueryBuilder.JoinQueryInfos.Remove(result.QueryBuilder.JoinQueryInfos.Last()); + } + return result; + } public ISugarQueryable LeftJoin(ISugarQueryable joinQueryable, Expression> joinExpression) { this.Context.InitMappingInfo(); diff --git a/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/QueryableProvider11-12.cs b/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/QueryableProvider11-12.cs index 27f1c0aed..e9c951b65 100644 --- a/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/QueryableProvider11-12.cs +++ b/Src/Asp.NetCore2/SqlSugar/Abstract/QueryableProvider/QueryableProvider11-12.cs @@ -28,6 +28,15 @@ namespace SqlSugar } return result; } + public ISugarQueryable InnerJoinIF(bool isJoin, Expression> joinExpression) + { + var result = InnerJoin(joinExpression); + if (isJoin == false) + { + result.QueryBuilder.JoinQueryInfos.Remove(result.QueryBuilder.JoinQueryInfos.Last()); + } + return result; + } public ISugarQueryable LeftJoin(ISugarQueryable joinQueryable, Expression> joinExpression) { this.Context.InitMappingInfo(); diff --git a/Src/Asp.NetCore2/SqlSugar/Interface/IQueryable.cs b/Src/Asp.NetCore2/SqlSugar/Interface/IQueryable.cs index 598a1b5ef..5d429ecf3 100644 --- a/Src/Asp.NetCore2/SqlSugar/Interface/IQueryable.cs +++ b/Src/Asp.NetCore2/SqlSugar/Interface/IQueryable.cs @@ -34,6 +34,7 @@ namespace SqlSugar ISugarQueryable FullJoin(ISugarQueryable joinQueryable, Expression> joinExpression); ISugarQueryable LeftJoin(Expression> joinExpression); ISugarQueryable LeftJoinIF(bool isLeftJoin,Expression> joinExpression); + ISugarQueryable InnerJoinIF(bool isJoin, Expression> joinExpression); ISugarQueryable LeftJoin(Expression> joinExpression,string tableName); ISugarQueryable FullJoin(Expression> joinExpression); ISugarQueryable FullJoin(Expression> joinExpression,string tableName); @@ -267,6 +268,7 @@ namespace SqlSugar { ISugarQueryable SelectMergeTable(Expression> expression); ISugarQueryable LeftJoinIF(bool isLeftJoin, Expression> joinExpression); + ISugarQueryable InnerJoinIF(bool isJoin, Expression> joinExpression); ISugarQueryable LeftJoin(ISugarQueryable joinQueryable, Expression> joinExpression); ISugarQueryable InnerJoin(ISugarQueryable joinQueryable, Expression> joinExpression); ISugarQueryable RightJoin(ISugarQueryable joinQueryable, Expression> joinExpression); @@ -384,6 +386,7 @@ namespace SqlSugar { ISugarQueryable SelectMergeTable(Expression> expression); ISugarQueryable LeftJoinIF(bool isLeftJoin, Expression> joinExpression); + ISugarQueryable InnerJoinIF(bool isJoin, Expression> joinExpression); ISugarQueryable LeftJoin(ISugarQueryable joinQueryable, Expression> joinExpression); ISugarQueryable InnerJoin(ISugarQueryable joinQueryable, Expression> joinExpression); ISugarQueryable RightJoin(ISugarQueryable joinQueryable, Expression> joinExpression); @@ -516,6 +519,7 @@ namespace SqlSugar { ISugarQueryable SelectMergeTable(Expression> expression); ISugarQueryable LeftJoinIF(bool isLeftJoin, Expression> joinExpression); + ISugarQueryable InnerJoinIF(bool isJoin, Expression> joinExpression); ISugarQueryable LeftJoin(ISugarQueryable joinQueryable, Expression> joinExpression); ISugarQueryable InnerJoin(ISugarQueryable joinQueryable, Expression> joinExpression); ISugarQueryable RightJoin(ISugarQueryable joinQueryable, Expression> joinExpression); @@ -654,6 +658,7 @@ namespace SqlSugar { ISugarQueryable SelectMergeTable(Expression> expression); ISugarQueryable LeftJoinIF(bool isLeftJoin, Expression> joinExpression); + ISugarQueryable InnerJoinIF(bool isJoin, Expression> joinExpression); ISugarQueryable LeftJoin(ISugarQueryable joinQueryable, Expression> joinExpression); ISugarQueryable InnerJoin(ISugarQueryable joinQueryable, Expression> joinExpression); ISugarQueryable RightJoin(ISugarQueryable joinQueryable, Expression> joinExpression); @@ -784,6 +789,7 @@ namespace SqlSugar { ISugarQueryable SelectMergeTable(Expression> expression); ISugarQueryable LeftJoinIF(bool isLeftJoin, Expression> joinExpression); + ISugarQueryable InnerJoinIF(bool isJoin, Expression> joinExpression); ISugarQueryable LeftJoin(ISugarQueryable joinQueryable, Expression> joinExpression); ISugarQueryable InnerJoin(ISugarQueryable joinQueryable, Expression> joinExpression); ISugarQueryable RightJoin(ISugarQueryable joinQueryable, Expression> joinExpression); @@ -923,6 +929,7 @@ namespace SqlSugar { ISugarQueryable SelectMergeTable(Expression> expression); ISugarQueryable LeftJoinIF(bool isLeftJoin, Expression> joinExpression); + ISugarQueryable InnerJoinIF(bool isJoin, Expression> joinExpression); ISugarQueryable LeftJoin(ISugarQueryable joinQueryable, Expression> joinExpression); ISugarQueryable InnerJoin(ISugarQueryable joinQueryable, Expression> joinExpression); ISugarQueryable RightJoin(ISugarQueryable joinQueryable, Expression> joinExpression); @@ -1056,6 +1063,7 @@ namespace SqlSugar { ISugarQueryable SelectMergeTable(Expression> expression); ISugarQueryable LeftJoinIF(bool isLeftJoin, Expression> joinExpression); + ISugarQueryable InnerJoinIF(bool isJoin, Expression> joinExpression); ISugarQueryable LeftJoin(ISugarQueryable joinQueryable, Expression> joinExpression); ISugarQueryable InnerJoin(ISugarQueryable joinQueryable, Expression> joinExpression); ISugarQueryable RightJoin(ISugarQueryable joinQueryable, Expression> joinExpression); @@ -1198,6 +1206,7 @@ namespace SqlSugar { ISugarQueryable SelectMergeTable(Expression> expression); ISugarQueryable LeftJoinIF(bool isLeftJoin, Expression> joinExpression); + ISugarQueryable InnerJoinIF(bool isJoin, Expression> joinExpression); ISugarQueryable LeftJoin(ISugarQueryable joinQueryable, Expression> joinExpression); ISugarQueryable InnerJoin(ISugarQueryable joinQueryable, Expression> joinExpression); ISugarQueryable RightJoin(ISugarQueryable joinQueryable, Expression> joinExpression); @@ -1320,6 +1329,7 @@ namespace SqlSugar { ISugarQueryable SelectMergeTable(Expression> expression); ISugarQueryable LeftJoinIF(bool isLeftJoin, Expression> joinExpression); + ISugarQueryable InnerJoinIF(bool isJoin, Expression> joinExpression); ISugarQueryable LeftJoin(ISugarQueryable joinQueryable, Expression> joinExpression); ISugarQueryable InnerJoin(ISugarQueryable joinQueryable, Expression> joinExpression); ISugarQueryable RightJoin(ISugarQueryable joinQueryable, Expression> joinExpression); @@ -1449,7 +1459,8 @@ namespace SqlSugar public partial interface ISugarQueryable : ISugarQueryable { ISugarQueryable SelectMergeTable(Expression> expression); - ISugarQueryable LeftJoinIF(bool isLeftJoin, Expression> joinExpression); + ISugarQueryable LeftJoinIF(bool isLeftJoin, Expression> joinExpression); + ISugarQueryable InnerJoinIF(bool isJoin, Expression> joinExpression); ISugarQueryable LeftJoin(ISugarQueryable joinQueryable, Expression> joinExpression); ISugarQueryable InnerJoin(ISugarQueryable joinQueryable, Expression> joinExpression); ISugarQueryable RightJoin(ISugarQueryable joinQueryable, Expression> joinExpression);