Skip to content

Commit c0a9fa6

Browse files
author
zzzprojects
committed
Fix QueryFilter
Fix QueryFilter
1 parent 05754fc commit c0a9fa6

File tree

11 files changed

+26
-14
lines changed

11 files changed

+26
-14
lines changed

src/Z.EntityFramework.Plus.EF5.NET40/Properties/AssemblyInfo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,5 +18,5 @@
1818
[assembly: AssemblyCulture("")]
1919
[assembly: ComVisible(false)]
2020
[assembly: Guid("e4c2af73-caeb-4429-bcb6-0a359484e064")]
21-
[assembly: AssemblyVersion("1.4.12")]
22-
[assembly: AssemblyFileVersion("1.4.12")]
21+
[assembly: AssemblyVersion("1.4.15")]
22+
[assembly: AssemblyFileVersion("1.4.15")]

src/Z.EntityFramework.Plus.EF5.NET40/QueryFilter/Extensions/IDbSet.Filter.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,12 @@ public static IQueryable<T> Filter<T>(this DbSet<T> query, params object[] keys)
3636
#endif
3737
{
3838
var queryFilterQueryable = QueryFilterManager.GetFilterQueryable(query);
39+
var nonQueryFilter = queryFilterQueryable != null ? (IQueryable<T>)queryFilterQueryable.OriginalQuery : query;
40+
3941
var context = queryFilterQueryable != null ? queryFilterQueryable.Context : query.GetDbContext();
4042
var filterContext = QueryFilterManager.AddOrGetFilterContext(context);
41-
return filterContext.ApplyFilter(query, keys);
43+
44+
return filterContext.ApplyFilter(nonQueryFilter, keys);
4245
}
4346
}
4447
}

src/Z.EntityFramework.Plus.EF5.NET40/QueryFilter/QueryFilter.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ public override object ApplyFilter<TEntity>(object query)
4040
// TODO: Use the same code as (EF5 || EF6) once EF team fix the cast issue: https://github.com/aspnet/EntityFramework/issues/3736
4141
if(QueryFilterManager.ForceCast)
4242
{
43-
return return Filter((IQueryable<T>) query).Cast<TEntity>();
43+
return Filter((IQueryable<T>) query).Cast<TEntity>();
4444
}
4545

4646
return Filter((IQueryable<T>) query);

src/Z.EntityFramework.Plus.EF5/Properties/AssemblyInfo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,5 +18,5 @@
1818
[assembly: AssemblyCulture("")]
1919
[assembly: ComVisible(false)]
2020
[assembly: Guid("abcbb878-043c-4957-a334-90e9872e684e")]
21-
[assembly: AssemblyVersion("1.4.12")]
22-
[assembly: AssemblyFileVersion("1.4.12")]
21+
[assembly: AssemblyVersion("1.4.15")]
22+
[assembly: AssemblyFileVersion("1.4.15")]

src/Z.EntityFramework.Plus.EF5/QueryFilter/Extensions/IDbSet.Filter.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,12 @@ public static IQueryable<T> Filter<T>(this DbSet<T> query, params object[] keys)
3636
#endif
3737
{
3838
var queryFilterQueryable = QueryFilterManager.GetFilterQueryable(query);
39+
var nonQueryFilter = queryFilterQueryable != null ? (IQueryable<T>)queryFilterQueryable.OriginalQuery : query;
40+
3941
var context = queryFilterQueryable != null ? queryFilterQueryable.Context : query.GetDbContext();
4042
var filterContext = QueryFilterManager.AddOrGetFilterContext(context);
41-
return filterContext.ApplyFilter(query, keys);
43+
44+
return filterContext.ApplyFilter(nonQueryFilter, keys);
4245
}
4346
}
4447
}

src/Z.EntityFramework.Plus.EF5/QueryFilter/QueryFilter.cs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,7 @@ public override object ApplyFilter<TEntity>(object query)
4040
// TODO: Use the same code as (EF5 || EF6) once EF team fix the cast issue: https://github.com/aspnet/EntityFramework/issues/3736
4141
if(QueryFilterManager.ForceCast)
4242
{
43-
return return Filter((IQueryable<T>) query).Cast<TEntity>();
43+
return Filter((IQueryable<T>) query).Cast<TEntity>();
4444
}
4545

4646
return Filter((IQueryable<T>) query);

src/Z.EntityFramework.Plus.EF6/QueryFilter/Extensions/IDbSet.Filter.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,12 @@ public static IQueryable<T> Filter<T>(this DbSet<T> query, params object[] keys)
3636
#endif
3737
{
3838
var queryFilterQueryable = QueryFilterManager.GetFilterQueryable(query);
39+
var nonQueryFilter = queryFilterQueryable != null ? (IQueryable<T>)queryFilterQueryable.OriginalQuery : query;
40+
3941
var context = queryFilterQueryable != null ? queryFilterQueryable.Context : query.GetDbContext();
4042
var filterContext = QueryFilterManager.AddOrGetFilterContext(context);
41-
return filterContext.ApplyFilter(query, keys);
43+
44+
return filterContext.ApplyFilter(nonQueryFilter, keys);
4245
}
4346
}
4447
}

src/Z.EntityFramework.Plus.EFCore/Properties/AssemblyInfo.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,5 +18,5 @@
1818
[assembly: AssemblyCulture("")]
1919
[assembly: ComVisible(false)]
2020
[assembly: Guid("c41195f5-937e-4f2b-9f36-20650a804caa")]
21-
[assembly: AssemblyVersion("1.4.13")]
22-
[assembly: AssemblyFileVersion("1.4.13")]
21+
[assembly: AssemblyVersion("1.4.15")]
22+
[assembly: AssemblyFileVersion("1.4.15")]

src/Z.EntityFramework.Plus.EFCore/QueryFilter/Extensions/IDbSet.Filter.cs

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,9 +36,12 @@ public static IQueryable<T> Filter<T>(this DbSet<T> query, params object[] keys)
3636
#endif
3737
{
3838
var queryFilterQueryable = QueryFilterManager.GetFilterQueryable(query);
39+
var nonQueryFilter = queryFilterQueryable != null ? (IQueryable<T>)queryFilterQueryable.OriginalQuery : query;
40+
3941
var context = queryFilterQueryable != null ? queryFilterQueryable.Context : query.GetDbContext();
4042
var filterContext = QueryFilterManager.AddOrGetFilterContext(context);
41-
return filterContext.ApplyFilter(query, keys);
43+
44+
return filterContext.ApplyFilter(nonQueryFilter, keys);
4245
}
4346
}
4447
}

src/Z.EntityFramework.Plus.EFCore/project.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
{
2-
"version": "1.4.13",
2+
"version": "1.4.15",
33
"description": "EF Bulk Operations & Utilities | Bulk Insert, Update, Delete, Merge from database.",
44
"authors": [ "ZZZ Projects Inc." ],
55
"packOptions": {

0 commit comments

Comments
 (0)