From 49802b147b36f76d224a8c02e525b3f8255c34b4 Mon Sep 17 00:00:00 2001 From: sunkaixuan <610262374@qq.com> Date: Tue, 28 Nov 2017 12:09:49 +0800 Subject: [PATCH] 4.6.0.9 --- .../SqlServerTest/Demos/D_QueryableView.cs | 31 ++++++++++ Src/Asp.Net/SqlServerTest/Program.cs | 1 + .../SqlServerTest/SqlServerTest.csproj | 1 + .../SqlSugar/Properties/AssemblyInfo.cs | 4 +- Src/Asp.Net/SqlSugar/SqlSugarClient.cs | 56 ++++++++++-------- .../SqliteTest/DataBase/SqlSugar4xTest.sqlite | Bin 475136 -> 475136 bytes 6 files changed, 67 insertions(+), 26 deletions(-) create mode 100644 Src/Asp.Net/SqlServerTest/Demos/D_QueryableView.cs diff --git a/Src/Asp.Net/SqlServerTest/Demos/D_QueryableView.cs b/Src/Asp.Net/SqlServerTest/Demos/D_QueryableView.cs new file mode 100644 index 000000000..7ed361170 --- /dev/null +++ b/Src/Asp.Net/SqlServerTest/Demos/D_QueryableView.cs @@ -0,0 +1,31 @@ +using OrmTest.Models; +using SqlSugar; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace OrmTest.Demo +{ + public class D_QueryableViewn : DemoBase + { + public static void Init() + { + var db = GetInstance(); + var q1 = db.Queryable((st,sc)=>new object[] { + JoinType.Left,st.SchoolId==sc.Id + }).Select((st, sc) => new ViewModelStudent4() { Id=st.Id, Name=st.Name,SchoolName=sc.Name }); + + var q2 = db.Queryable(); + + + var q3 = db.Queryable(q1, q2, (j1, j2) => j1.Id == j2.Id).Select((j1, j2) => j1).ToList(); + } + } + + public class ViewModelStudent4 { + public int Id { get; set; } + public string SchoolName { get; set; } + public string Name { get; set; } + } +} diff --git a/Src/Asp.Net/SqlServerTest/Program.cs b/Src/Asp.Net/SqlServerTest/Program.cs index c7545da81..5061a4745 100644 --- a/Src/Asp.Net/SqlServerTest/Program.cs +++ b/Src/Asp.Net/SqlServerTest/Program.cs @@ -49,6 +49,7 @@ namespace OrmTest OrmTest.Demo.MasterSlave.Init(); OrmTest.Demo.SharedConnection.Init(); OrmTest.Demo.ExtSqlFun.Init(); + OrmTest.Demo.D_QueryableViewn.Init(); } } } diff --git a/Src/Asp.Net/SqlServerTest/SqlServerTest.csproj b/Src/Asp.Net/SqlServerTest/SqlServerTest.csproj index f6c44945b..f6b628a58 100644 --- a/Src/Asp.Net/SqlServerTest/SqlServerTest.csproj +++ b/Src/Asp.Net/SqlServerTest/SqlServerTest.csproj @@ -62,6 +62,7 @@ + diff --git a/Src/Asp.Net/SqlSugar/Properties/AssemblyInfo.cs b/Src/Asp.Net/SqlSugar/Properties/AssemblyInfo.cs index c6510b36f..dcca04e74 100644 --- a/Src/Asp.Net/SqlSugar/Properties/AssemblyInfo.cs +++ b/Src/Asp.Net/SqlSugar/Properties/AssemblyInfo.cs @@ -31,5 +31,5 @@ using System.Runtime.InteropServices; // You can specify all the values or you can default the Build and Revision Numbers // by using the '*' as shown below: // [assembly: AssemblyVersion("1.0.*")] -[assembly: AssemblyVersion("4.6.0.8")] -[assembly: AssemblyFileVersion("4.6.0.8")] +[assembly: AssemblyVersion("4.6.0.9")] +[assembly: AssemblyFileVersion("4.6.0.9")] diff --git a/Src/Asp.Net/SqlSugar/SqlSugarClient.cs b/Src/Asp.Net/SqlSugar/SqlSugarClient.cs index 9c3699355..ef8a8f44b 100644 --- a/Src/Asp.Net/SqlSugar/SqlSugarClient.cs +++ b/Src/Asp.Net/SqlSugar/SqlSugarClient.cs @@ -311,37 +311,45 @@ namespace SqlSugar return queryable; } public virtual ISugarQueryable Queryable( - ISugarQueryable joinQueryable1, ISugarQueryable joinQueryable2, Expression> joinExpression) where T : class, new() + ISugarQueryable joinQueryable1, ISugarQueryable joinQueryable2, Expression> joinExpression) where T : class, new() where T2 : class, new() { return Queryable(joinQueryable1, joinQueryable2, JoinType.Inner, joinExpression); } public virtual ISugarQueryable Queryable( - ISugarQueryable joinQueryable1, ISugarQueryable joinQueryable2, JoinType joinType, Expression> joinExpression) where T : class, new() + ISugarQueryable joinQueryable1, ISugarQueryable joinQueryable2, JoinType joinType, Expression> joinExpression) where T : class, new() where T2 : class, new() { - throw new Exception("Still in the process of development"); - } - public virtual ISugarQueryable Queryable( - ISugarQueryable joinQueryableMaster, ISugarQueryable joinQueryable1, JoinType joinType, Expression> joinExpression1, - ISugarQueryable joinQueryable2, JoinType joinType2, Expression> joinExpression2) where T : class, new() - { - throw new Exception("Still in the process of development"); - } + var sqlBuilder = InstanceFactory.GetSqlbuilder(base.Context.CurrentConnectionConfig); + sqlBuilder.Context = base.Context; + InitMppingInfo(); + var types = new Type[] { typeof(T2) }; + var queryable = InstanceFactory.GetQueryable(base.CurrentConnectionConfig); + queryable.Context = base.Context; + queryable.SqlBuilder = sqlBuilder; + queryable.QueryBuilder = InstanceFactory.GetQueryBuilder(base.CurrentConnectionConfig); + queryable.QueryBuilder.JoinQueryInfos = new List(); + queryable.QueryBuilder.Builder = sqlBuilder; + queryable.QueryBuilder.Context = base.Context; + queryable.QueryBuilder.EntityType = typeof(T); + queryable.QueryBuilder.LambdaExpressions = InstanceFactory.GetLambdaExpressions(base.CurrentConnectionConfig); - public virtual ISugarQueryable Queryable( - ISugarQueryable joinQueryableMaster, ISugarQueryable joinQueryable1, JoinType joinType, Expression> joinExpression1, - ISugarQueryable joinQueryable2, JoinType joinType2, Expression> joinExpression2, - ISugarQueryable joinQueryable3, JoinType joinType3, Expression> joinExpression3) where T : class, new() - { - throw new Exception("Still in the process of development"); - } + //master + var shortName1 = joinExpression.Parameters[0].Name; + var sqlObj1 = joinQueryable1.ToSql(); + string sql1 = sqlObj1.Key; + UtilMethods.RepairReplicationParameters(ref sql1, sqlObj1.Value.ToArray(), 0); + queryable.QueryBuilder.EntityName = sqlBuilder.GetPackTable(sql1, shortName1); ; + queryable.QueryBuilder.Parameters.AddRange(sqlObj1.Value); - public virtual ISugarQueryable Queryable( - ISugarQueryable joinQueryableMaster, ISugarQueryable joinQueryable1, JoinType joinType, Expression> joinExpression1, - ISugarQueryable joinQueryable2, JoinType joinType2, Expression> joinExpression2, - ISugarQueryable joinQueryable3, JoinType joinType3, Expression> joinExpression3, - ISugarQueryable joinQueryable4, JoinType joinType4, Expression> joinExpression4) where T : class, new() - { - throw new Exception("Still in the process of development"); + //join table 1 + var shortName2 = joinExpression.Parameters[1].Name; + var sqlObj2 = joinQueryable2.ToSql(); + string sql2 = sqlObj2.Key; + UtilMethods.RepairReplicationParameters(ref sql2, sqlObj2.Value.ToArray(), 1); + queryable.QueryBuilder.Parameters.AddRange(sqlObj2.Value); + var exp = queryable.QueryBuilder.GetExpressionValue(joinExpression, ResolveExpressType.WhereMultiple); + queryable.QueryBuilder.JoinQueryInfos.Add(new JoinQueryInfo() { JoinIndex = 0, JoinType = joinType, JoinWhere = exp.GetResultString(), TableName = sqlBuilder.GetPackTable(sql2,shortName2)}); + + return queryable; } #endregion diff --git a/Src/Asp.Net/SqliteTest/DataBase/SqlSugar4xTest.sqlite b/Src/Asp.Net/SqliteTest/DataBase/SqlSugar4xTest.sqlite index 107104fb601c67f1064fa49925dce462d80dd934..6a4bceadc109d31dfd30b9ff50237a003995b18f 100644 GIT binary patch delta 55587 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 {sMKcp#4~>190N@;?uB?`1#$4Ts`^JkCD% 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