mirror of
https://github.com/nsnail/FreeSql.git
synced 2025-04-22 18:52:50 +08:00
- 优化 GlobalFilter 子查询传播重复的问题;#642
This commit is contained in:
parent
fcfeacdc95
commit
7379050bfd
@ -72,6 +72,9 @@ namespace FreeSql.Tests.PostgreSQLExpression
|
|||||||
val1 = string.Join("**", fsql.Select<StringJoin01>().ToList(a => a.id));
|
val1 = string.Join("**", fsql.Select<StringJoin01>().ToList(a => a.id));
|
||||||
val2 = fsql.Select<StringJoin01>().ToList(a => string.Join("**", fsql.Select<StringJoin01>().As("b").ToList(b => b.id)));
|
val2 = fsql.Select<StringJoin01>().ToList(a => string.Join("**", fsql.Select<StringJoin01>().As("b").ToList(b => b.id)));
|
||||||
Assert.Equal(val1, val2[0]);
|
Assert.Equal(val1, val2[0]);
|
||||||
|
|
||||||
|
fsql.GlobalFilter.Apply<StringJoin01>("test001", a => a.name.Length > 0);
|
||||||
|
val2 = fsql.Select<StringJoin01>().ToList(a => string.Join("**", fsql.Select<StringJoin01>().As("b").ToList(b => b.id)));
|
||||||
}
|
}
|
||||||
class StringJoin01
|
class StringJoin01
|
||||||
{
|
{
|
||||||
|
@ -1030,7 +1030,7 @@ namespace FreeSql.Internal
|
|||||||
{
|
{
|
||||||
var fsqlGlobalFilter = fsqlSelect0._whereGlobalFilter;
|
var fsqlGlobalFilter = fsqlSelect0._whereGlobalFilter;
|
||||||
if (fsqlGlobalFilter != tsc.whereGlobalFilter)
|
if (fsqlGlobalFilter != tsc.whereGlobalFilter)
|
||||||
fsqlGlobalFilter.AddRange(tsc.whereGlobalFilter);
|
fsqlGlobalFilter.AddRange(tsc.whereGlobalFilter.Where(b => !fsqlGlobalFilter.Any(a => a.Name == b.Name)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
else if (fsqlType != null)
|
else if (fsqlType != null)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user