- 增加 GroupBy ToDictionary 返回字段的查询方法,TKey 为 GroupBy 选择的对象;

- 整理 GroupBy 所有方法不使用 DTO 映射规则;
This commit is contained in:
28810
2020-04-08 19:10:04 +08:00
parent fa59a6e3e8
commit ee1e292165
19 changed files with 455 additions and 207 deletions

View File

@@ -750,6 +750,14 @@ namespace FreeSql.Tests.MsAccess
cou = b.Count(),
sum2 = b.Sum(b.Value.TypeGuid)
});
var aggtolist11 = select
.GroupBy(a => a.Title)
.ToDictionary(b => new
{
b.Key,
cou = b.Count(),
sum2 = b.Sum(b.Value.TypeGuid)
});
var aggsql2 = select
.GroupBy(a => new { a.Title, yyyy = string.Concat(a.CreateTime.Year, '-', a.CreateTime.Month) })
@@ -768,6 +776,16 @@ namespace FreeSql.Tests.MsAccess
b.Key.Title,
b.Key.yyyy,
cou = b.Count(),
sum2 = b.Sum(b.Value.TypeGuid)
});
var aggtolist22 = select
.GroupBy(a => new { a.Title, yyyy = string.Concat(a.CreateTime.Year, '-', a.CreateTime.Month) })
.ToDictionary(b => new
{
b.Key.Title,
b.Key.yyyy,
cou = b.Count(),
sum2 = b.Sum(b.Value.TypeGuid)
});

View File

@@ -863,7 +863,6 @@ namespace FreeSql.Tests.MySql
{
b.Key,
cou = b.Count(),
sum = b.Sum(b.Key),
sum2 = b.Sum(b.Value.TypeGuid)
});
var aggtolist1 = select
@@ -872,7 +871,14 @@ namespace FreeSql.Tests.MySql
{
b.Key,
cou = b.Count(),
sum = b.Sum(b.Key),
sum2 = b.Sum(b.Value.TypeGuid)
});
var aggtolist11 = select
.GroupBy(a => a.Title)
.ToDictionary(b => new
{
b.Key,
cou = b.Count(),
sum2 = b.Sum(b.Value.TypeGuid)
});
@@ -884,7 +890,6 @@ namespace FreeSql.Tests.MySql
b.Key.yyyy,
cou = b.Count(),
sum = b.Sum(b.Key.yyyy),
sum2 = b.Sum(b.Value.TypeGuid)
});
var aggtolist2 = select
@@ -895,7 +900,16 @@ namespace FreeSql.Tests.MySql
b.Key.yyyy,
cou = b.Count(),
sum = b.Sum(b.Key.yyyy),
sum2 = b.Sum(b.Value.TypeGuid)
});
var aggtolist22 = select
.GroupBy(a => new { a.Title, yyyy = string.Concat(a.CreateTime.Year, '-', a.CreateTime.Month) })
.ToDictionary(b => new
{
b.Key.Title,
b.Key.yyyy,
cou = b.Count(),
sum2 = b.Sum(b.Value.TypeGuid)
});
@@ -905,7 +919,6 @@ namespace FreeSql.Tests.MySql
{
b.Key,
cou = b.Count(),
sum = b.Sum(b.Key),
sum2 = b.Sum(b.Value.TypeGuid),
sum3 = b.Sum(b.Value.Type.Parent.Id)
});

View File

@@ -759,6 +759,14 @@ namespace FreeSql.Tests.Oracle
cou = b.Count(),
sum2 = b.Sum(b.Value.TypeGuid)
});
var aggtolist11 = select
.GroupBy(a => a.Title)
.ToDictionary(b => new
{
b.Key,
cou = b.Count(),
sum2 = b.Sum(b.Value.TypeGuid)
});
var aggsql2 = select
.GroupBy(a => new { a.Title, yyyy = string.Concat(a.CreateTime.Year, '-', a.CreateTime.Month) })
@@ -777,6 +785,16 @@ namespace FreeSql.Tests.Oracle
b.Key.Title,
b.Key.yyyy,
cou = b.Count(),
sum2 = b.Sum(b.Value.TypeGuid)
});
var aggtolist22 = select
.GroupBy(a => new { a.Title, yyyy = string.Concat(a.CreateTime.Year, '-', a.CreateTime.Month) })
.ToDictionary(b => new
{
b.Key.Title,
b.Key.yyyy,
cou = b.Count(),
sum2 = b.Sum(b.Value.TypeGuid)
});

View File

@@ -836,6 +836,14 @@ namespace FreeSql.Tests.PostgreSQL
cou = b.Count(),
sum2 = b.Sum(b.Value.TypeGuid)
});
var aggtolist11 = select
.GroupBy(a => a.Title)
.ToDictionary(b => new
{
b.Key,
cou = b.Count(),
sum2 = b.Sum(b.Value.TypeGuid)
});
var aggsql2 = select
.GroupBy(a => new { a.Title, yyyy = string.Concat(a.CreateTime.Year, '-', a.CreateTime.Month) })
@@ -854,6 +862,16 @@ namespace FreeSql.Tests.PostgreSQL
b.Key.Title,
b.Key.yyyy,
cou = b.Count(),
sum2 = b.Sum(b.Value.TypeGuid)
});
var aggtolist22 = select
.GroupBy(a => new { a.Title, yyyy = string.Concat(a.CreateTime.Year, '-', a.CreateTime.Month) })
.ToDictionary(b => new
{
b.Key.Title,
b.Key.yyyy,
cou = b.Count(),
sum2 = b.Sum(b.Value.TypeGuid)
});

View File

@@ -763,6 +763,14 @@ namespace FreeSql.Tests.SqlServer
cou = b.Count(),
sum2 = b.Sum(b.Value.TypeGuid)
});
var aggtolist11 = select
.GroupBy(a => a.Title)
.ToDictionary(b => new
{
b.Key,
cou = b.Count(),
sum2 = b.Sum(b.Value.TypeGuid)
});
var aggsql2 = select
.GroupBy(a => new { a.Title, yyyy = string.Concat(a.CreateTime.Year, '-', a.CreateTime.Month) })
@@ -781,6 +789,16 @@ namespace FreeSql.Tests.SqlServer
b.Key.Title,
b.Key.yyyy,
cou = b.Count(),
sum2 = b.Sum(b.Value.TypeGuid)
});
var aggtolist22 = select
.GroupBy(a => new { a.Title, yyyy = string.Concat(a.CreateTime.Year, '-', a.CreateTime.Month) })
.ToDictionary(b => new
{
b.Key.Title,
b.Key.yyyy,
cou = b.Count(),
sum2 = b.Sum(b.Value.TypeGuid)
});

View File

@@ -701,7 +701,6 @@ namespace FreeSql.Tests.Sqlite
{
b.Key,
cou = b.Count(),
sum = b.Sum(b.Key),
sum2 = b.Sum(b.Value.TypeGuid)
});
var aggtolist1 = select
@@ -710,7 +709,14 @@ namespace FreeSql.Tests.Sqlite
{
b.Key,
cou = b.Count(),
sum = b.Sum(b.Key),
sum2 = b.Sum(b.Value.TypeGuid)
});
var aggtolist11 = select
.GroupBy(a => a.Title)
.ToDictionary(b => new
{
b.Key,
cou = b.Count(),
sum2 = b.Sum(b.Value.TypeGuid)
});
@@ -722,7 +728,6 @@ namespace FreeSql.Tests.Sqlite
b.Key.yyyy,
cou = b.Count(),
sum = b.Sum(b.Key.yyyy),
sum2 = b.Sum(b.Value.TypeGuid)
});
var aggtolist2 = select
@@ -733,7 +738,16 @@ namespace FreeSql.Tests.Sqlite
b.Key.yyyy,
cou = b.Count(),
sum = b.Sum(b.Key.yyyy),
sum2 = b.Sum(b.Value.TypeGuid)
});
var aggtolist22 = select
.GroupBy(a => new { a.Title, yyyy = string.Concat(a.CreateTime.Year, '-', a.CreateTime.Month) })
.ToDictionary(b => new
{
b.Key.Title,
b.Key.yyyy,
cou = b.Count(),
sum2 = b.Sum(b.Value.TypeGuid)
});
@@ -743,7 +757,6 @@ namespace FreeSql.Tests.Sqlite
{
b.Key,
cou = b.Count(),
sum = b.Sum(b.Key),
sum2 = b.Sum(b.Value.TypeGuid),
sum3 = b.Sum(b.Value.Type.Parent.Id)
});

View File

@@ -962,6 +962,29 @@ namespace FreeSql.Tests
sum2 = b.Sum(b.Value.TypeGuid)
});
var aggtolist21 = select
.GroupBy(a => new { a.Title, yyyy = string.Concat(a.CreateTime.Year, '-', a.CreateTime.Month) })
.ToDictionary(b => new
{
b.Key.Title,
b.Key.yyyy,
cou = b.Count(),
sum = b.Sum(b.Key.yyyy),
sum2 = b.Sum(b.Value.TypeGuid)
});
var aggtolist22 = select
.GroupBy(a => new { a.Title, yyyy = string.Concat(a.CreateTime.Year, '-', a.CreateTime.Month) })
.ToDictionaryAsync(b => new
{
b.Key.Title,
b.Key.yyyy,
cou = b.Count(),
sum = b.Sum(b.Key.yyyy),
sum2 = b.Sum(b.Value.TypeGuid)
}).Result;
var aggsql3 = select
.GroupBy(a => a.Title)
.ToSql(b => new