diff --git a/Src/Asp.Net/MySqlTest/Demo/DemoJ_Report.cs b/Src/Asp.Net/MySqlTest/Demo/DemoJ_Report.cs index a26eacde1..13494a035 100644 --- a/Src/Asp.Net/MySqlTest/Demo/DemoJ_Report.cs +++ b/Src/Asp.Net/MySqlTest/Demo/DemoJ_Report.cs @@ -38,7 +38,7 @@ namespace OrmTest { var list = new List() { 1, 2, 3 }; var query1 = db.Queryable(); - var queryable2 = db.Reportable(list).ToSingleColumnQueryable(); + var queryable2 = db.Reportable(list).ToQueryable(); var x = db.Queryable(queryable2, query1, (x2, x1) => x1.Id.Equals(x2.ColumnName)) .Select((x2, x1) => new { x = x1.Id, x2 = x2.ColumnName }).ToList(); } @@ -86,16 +86,16 @@ namespace OrmTest }).ExecuteCommand(); - var queryableLeft = db.Reportable(ReportableDateType.MonthsInLast1years).ToSingleColumnQueryable(); + var queryableLeft = db.Reportable(ReportableDateType.MonthsInLast1years).ToQueryable(); var queryableRight = db.Queryable(); var list= db.Queryable(queryableLeft, queryableRight, JoinType.Left, - (x1, x2) => x2.operate_time.ToString("yyyy-MM")==SqlFunc.ToDate(x1.ColumnName).ToString("yyyy-MM")) + (x1, x2) => x2.operate_time.ToString("yyyy-MM")==x1.ColumnName.ToString("yyyy-MM")) .GroupBy((x1,x2)=>x1.ColumnName) .Where(x1=>SqlFunc.Between(x1.ColumnName,"2021-01-01",DateTime.Now)) .Select((x1, x2) => new { count=SqlFunc.AggregateSum(SqlFunc.IIF(x2.id>0,1,0)) , - date=SqlFunc.ToDate(x1.ColumnName).ToString("yyyy-MM") + date=x1.ColumnName.ToString("yyyy-MM") }).ToList(); } diff --git a/Src/Asp.Net/OracleTest/Demo/DemoJ_Report.cs b/Src/Asp.Net/OracleTest/Demo/DemoJ_Report.cs index 880769be2..01e1cee63 100644 --- a/Src/Asp.Net/OracleTest/Demo/DemoJ_Report.cs +++ b/Src/Asp.Net/OracleTest/Demo/DemoJ_Report.cs @@ -38,7 +38,7 @@ namespace OrmTest { var list = new List() { 1, 2, 3 }; var query1 = db.Queryable(); - var queryable2 = db.Reportable(list).ToSingleColumnQueryable(); + var queryable2 = db.Reportable(list).ToQueryable(); var x = db.Queryable(queryable2, query1, (x2, x1) => x1.Id.Equals(x2.ColumnName)) .Select((x2, x1) => new { x = x1.Id, x2 = x2.ColumnName }).ToList(); } @@ -86,16 +86,16 @@ namespace OrmTest }).ExecuteCommand(); - var queryableLeft = db.Reportable(ReportableDateType.MonthsInLast1years).ToSingleColumnQueryable(); + var queryableLeft = db.Reportable(ReportableDateType.MonthsInLast1years).ToQueryable(); var queryableRight = db.Queryable(); var list= db.Queryable(queryableLeft, queryableRight, JoinType.Left, - (x1, x2) => x2.operate_time.ToString("yyyy-MM")==SqlFunc.ToDate(x1.ColumnName).ToString("yyyy-MM")) + (x1, x2) => x2.operate_time.ToString("yyyy-MM")== x1.ColumnName .ToString("yyyy-MM")) .GroupBy((x1,x2)=>x1.ColumnName) - .Where(x1=>SqlFunc.Between(SqlFunc.ToDate(x1.ColumnName),DateTime.Now.AddYears(-1),DateTime.Now)) + .Where(x1=>SqlFunc.Between(x1.ColumnName,DateTime.Now.AddYears(-1),DateTime.Now)) .Select((x1, x2) => new { count=SqlFunc.AggregateSum(SqlFunc.IIF(x2.id>0,1,0)) , - date=SqlFunc.ToDate(x1.ColumnName).ToString("yyyy-MM") + date= x1.ColumnName.ToString("yyyy-MM") }).ToList(); } diff --git a/Src/Asp.Net/PgSqlTest/Demo/DemoJ_Report.cs b/Src/Asp.Net/PgSqlTest/Demo/DemoJ_Report.cs index 9fa57e606..e1a347745 100644 --- a/Src/Asp.Net/PgSqlTest/Demo/DemoJ_Report.cs +++ b/Src/Asp.Net/PgSqlTest/Demo/DemoJ_Report.cs @@ -38,7 +38,7 @@ namespace OrmTest { var list = new List() { 1, 2, 3 }; var query1 = db.Queryable(); - var queryable2 = db.Reportable(list).ToSingleColumnQueryable(); + var queryable2 = db.Reportable(list).ToQueryable(); var x = db.Queryable(queryable2, query1, (x2, x1) => x1.Id.Equals(x2.ColumnName)) .Select((x2, x1) => new { x = x1.Id, x2 = x2.ColumnName }).ToList(); } @@ -86,17 +86,16 @@ namespace OrmTest }).ExecuteCommand(); - var queryableLeft = db.Reportable(ReportableDateType.MonthsInLast1years).ToSingleColumnQueryable(); + var queryableLeft = db.Reportable(ReportableDateType.MonthsInLast1years).ToQueryable(); var queryableRight = db.Queryable(); var list= db.Queryable(queryableLeft, queryableRight, JoinType.Left, - (x1, x2) => x2.operate_time.ToString("yyyy-MM")==SqlFunc.ToDate(x1.ColumnName).ToString("yyyy-MM")) + (x1, x2) => x2.operate_time.ToString("yyyy-MM")==x1.ColumnName.ToString("yyyy-MM")) .GroupBy((x1,x2)=>x1.ColumnName) .Where(x1=>SqlFunc.Between(x1.ColumnName,"2021-01-01",DateTime.Now)) .Select((x1, x2) => new { count=SqlFunc.AggregateSum(SqlFunc.IIF(x2.id>0,1,0)) , - date=SqlFunc.ToDate(x1.ColumnName).ToString("yyyy-MM") - + date=x1.ColumnName.ToString("yyyy-MM") }).ToList(); } diff --git a/Src/Asp.Net/SqlServerTest/Demo/DemoJ_Report.cs b/Src/Asp.Net/SqlServerTest/Demo/DemoJ_Report.cs index e48fed680..f8e98922e 100644 --- a/Src/Asp.Net/SqlServerTest/Demo/DemoJ_Report.cs +++ b/Src/Asp.Net/SqlServerTest/Demo/DemoJ_Report.cs @@ -38,7 +38,7 @@ namespace OrmTest { var list = new List() { 1, 2, 3 }; var query1 = db.Queryable(); - var queryable2 = db.Reportable(list).ToSingleColumnQueryable(); + var queryable2 = db.Reportable(list).ToQueryable(); var x = db.Queryable(query1, queryable2, (x1, x2) => x1.Id.Equals(x2.ColumnName)) .Select((x1, x2) => new { x = x1.Id, x2 = x2.ColumnName }).ToList(); } @@ -86,16 +86,16 @@ namespace OrmTest }).ExecuteCommand(); - var queryableLeft = db.Reportable(ReportableDateType.MonthsInLast1years).ToSingleColumnQueryable(); + var queryableLeft = db.Reportable(ReportableDateType.MonthsInLast1years).ToQueryable(); var queryableRight = db.Queryable(); var list= db.Queryable(queryableLeft, queryableRight, JoinType.Left, - (x1, x2) => x2.operate_time.ToString("yyyy-MM")==SqlFunc.ToDate(x1.ColumnName).ToString("yyyy-MM")) + (x1, x2) => x2.operate_time.ToString("yyyy-MM")== x1.ColumnName .ToString("yyyy-MM")) .GroupBy((x1,x2)=>x1.ColumnName) .Where(x1=>SqlFunc.Between(x1.ColumnName,"2021-01-01",DateTime.Now)) .Select((x1, x2) => new { count=SqlFunc.AggregateSum(SqlFunc.IIF(x2.id>0,1,0)) , - date=SqlFunc.ToDate(x1.ColumnName).ToString("yyyy-MM") + date=x1.ColumnName.ToString("yyyy-MM") }).ToList(); } diff --git a/Src/Asp.Net/SqlSugar/Abstract/Reportable/ReportableProvider.cs b/Src/Asp.Net/SqlSugar/Abstract/Reportable/ReportableProvider.cs index d851f7146..dc9cfd9b7 100644 --- a/Src/Asp.Net/SqlSugar/Abstract/Reportable/ReportableProvider.cs +++ b/Src/Asp.Net/SqlSugar/Abstract/Reportable/ReportableProvider.cs @@ -29,10 +29,10 @@ namespace SqlSugar Init(); } - public IReportable MakeUp(Func auto) - { - throw new NotImplementedException(); - } + //public IReportable MakeUp(Func auto) + //{ + // throw new NotImplementedException(); + //} public ISugarQueryable ToQueryable() { @@ -67,6 +67,10 @@ namespace SqlSugar } return this.Context.SqlQueryable(sb.ToString()).Select(); } + public ISugarQueryable> ToQueryable() + { + return ToQueryable().Select>(); + } private void Each(StringBuilder sb, List list) { @@ -85,11 +89,6 @@ namespace SqlSugar } } - public ISugarQueryable ToSingleColumnQueryable() - { - return ToQueryable().Select(); - } - private void ClassMethod(Y data, StringBuilder sb,bool isLast) { var columns = new StringBuilder(); diff --git a/Src/Asp.Net/SqlSugar/Entities/SingleColumnsEntity.cs b/Src/Asp.Net/SqlSugar/Entities/SingleColumnsEntity.cs index f795c85d5..7a626a2b4 100644 --- a/Src/Asp.Net/SqlSugar/Entities/SingleColumnsEntity.cs +++ b/Src/Asp.Net/SqlSugar/Entities/SingleColumnsEntity.cs @@ -6,8 +6,8 @@ using System.Threading.Tasks; namespace SqlSugar { - public class SingleColumnEntity + public class SingleColumnEntity { - public object ColumnName { get; set; } + public T ColumnName { get; set; } } } diff --git a/Src/Asp.Net/SqlSugar/Interface/IReportable.cs b/Src/Asp.Net/SqlSugar/Interface/IReportable.cs index d9f15e294..8494def76 100644 --- a/Src/Asp.Net/SqlSugar/Interface/IReportable.cs +++ b/Src/Asp.Net/SqlSugar/Interface/IReportable.cs @@ -8,8 +8,8 @@ namespace SqlSugar { public interface IReportable { - IReportable MakeUp(Func auto); + //IReportable MakeUp(Func auto); ISugarQueryable ToQueryable(); - ISugarQueryable ToSingleColumnQueryable(); + ISugarQueryable> ToQueryable(); } } diff --git a/Src/Asp.Net/SqliteTest/Demo/DemoJ_Report.cs b/Src/Asp.Net/SqliteTest/Demo/DemoJ_Report.cs index bae200ef1..6e0c08727 100644 --- a/Src/Asp.Net/SqliteTest/Demo/DemoJ_Report.cs +++ b/Src/Asp.Net/SqliteTest/Demo/DemoJ_Report.cs @@ -38,7 +38,7 @@ namespace OrmTest { var list = new List() { 1, 2, 3 }; var query1 = db.Queryable(); - var queryable2 = db.Reportable(list).ToSingleColumnQueryable(); + var queryable2 = db.Reportable(list).ToQueryable(); var x = db.Queryable(queryable2, query1, (x2, x1) => x1.Id.Equals(x2.ColumnName)) .Select((x2, x1) => new { x = x1.Id, x2 = x2.ColumnName }).ToList(); } @@ -86,16 +86,16 @@ namespace OrmTest }).ExecuteCommand(); - var queryableLeft = db.Reportable(ReportableDateType.MonthsInLast1years).ToSingleColumnQueryable(); + var queryableLeft = db.Reportable(ReportableDateType.MonthsInLast1years).ToQueryable(); var queryableRight = db.Queryable(); var list= db.Queryable(queryableLeft, queryableRight, JoinType.Left, - (x1, x2) => x2.operate_time.ToString("yyyy-MM")==SqlFunc.ToDate(x1.ColumnName).ToString("yyyy-MM")) + (x1, x2) => x2.operate_time.ToString("yyyy-MM")==x1.ColumnName.ToString("yyyy-MM")) .GroupBy((x1,x2)=>x1.ColumnName) .Where(x1=>SqlFunc.Between(x1.ColumnName,"2021-01-01",DateTime.Now)) .Select((x1, x2) => new { count=SqlFunc.AggregateSum(SqlFunc.IIF(x2.id>0,1,0)) , - date=SqlFunc.ToDate(x1.ColumnName).ToString("yyyy-MM") + date=x1.ColumnName.ToString("yyyy-MM") }).ToList(); }