From d01160e6512945e6d82ac7f2eb7887ed704e8e4f Mon Sep 17 00:00:00 2001 From: Matthew Winder Date: Thu, 26 Jan 2017 10:33:06 +0000 Subject: [PATCH 1/2] Preserve UseDatabaseNullSemantics value of intercepted query. --- .../FilterInterceptor.cs | 29 +++++++++---------- 1 file changed, 14 insertions(+), 15 deletions(-) diff --git a/src/EntityFramework.Filters/FilterInterceptor.cs b/src/EntityFramework.Filters/FilterInterceptor.cs index c808e8a..2df87f0 100644 --- a/src/EntityFramework.Filters/FilterInterceptor.cs +++ b/src/EntityFramework.Filters/FilterInterceptor.cs @@ -9,21 +9,20 @@ public class FilterInterceptor : IDbCommandTreeInterceptor { public void TreeCreated(DbCommandTreeInterceptionContext interceptionContext) { - if (interceptionContext.OriginalResult.DataSpace == DataSpace.CSpace) - { - var queryCommand = interceptionContext.Result as DbQueryCommandTree; - if (queryCommand != null) - { - var context = interceptionContext.DbContexts.FirstOrDefault(); - if (context != null) - { - var newQuery = - queryCommand.Query.Accept(new FilterQueryVisitor(context)); - interceptionContext.Result = new DbQueryCommandTree( - queryCommand.MetadataWorkspace, queryCommand.DataSpace, newQuery); - } - } - } + if (interceptionContext.OriginalResult.DataSpace != DataSpace.CSpace) return; + + var queryCommand = interceptionContext.Result as DbQueryCommandTree; + if (queryCommand == null) return; + + var context = interceptionContext.DbContexts.FirstOrDefault(); + if (context == null) return; + + interceptionContext.Result = new DbQueryCommandTree( + queryCommand.MetadataWorkspace, + queryCommand.DataSpace, + queryCommand.Query.Accept(new FilterQueryVisitor(context)), + validate: true, + useDatabaseNullSemantics: queryCommand.UseDatabaseNullSemantics); } } } From 02d7b2fbbf4fd242edb45a492ceeae782fedf070 Mon Sep 17 00:00:00 2001 From: Matthew Winder Date: Thu, 26 Jan 2017 10:35:11 +0000 Subject: [PATCH 2/2] Upgraded EF to version 6.1.3 --- .../EntityFramework.Filters.Example.csproj | 10 ++++++---- src/EntityFramework.Filters.Example/packages.config | 2 +- .../EntityFramework.Filters.Tests.csproj | 10 ++++++---- src/EntityFramework.Filters.Tests/packages.config | 2 +- .../EntityFramework.Filters.csproj | 8 ++++---- src/EntityFramework.Filters/packages.config | 2 +- 6 files changed, 19 insertions(+), 15 deletions(-) diff --git a/src/EntityFramework.Filters.Example/EntityFramework.Filters.Example.csproj b/src/EntityFramework.Filters.Example/EntityFramework.Filters.Example.csproj index 99e42df..165a7de 100644 --- a/src/EntityFramework.Filters.Example/EntityFramework.Filters.Example.csproj +++ b/src/EntityFramework.Filters.Example/EntityFramework.Filters.Example.csproj @@ -30,11 +30,13 @@ 4 - - ..\packages\EntityFramework.6.1.0\lib\net45\EntityFramework.dll + + ..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.dll + True - - ..\packages\EntityFramework.6.1.0\lib\net45\EntityFramework.SqlServer.dll + + ..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.SqlServer.dll + True diff --git a/src/EntityFramework.Filters.Example/packages.config b/src/EntityFramework.Filters.Example/packages.config index 19920ea..dd08695 100644 --- a/src/EntityFramework.Filters.Example/packages.config +++ b/src/EntityFramework.Filters.Example/packages.config @@ -1,5 +1,5 @@  - + \ No newline at end of file diff --git a/src/EntityFramework.Filters.Tests/EntityFramework.Filters.Tests.csproj b/src/EntityFramework.Filters.Tests/EntityFramework.Filters.Tests.csproj index 764f1e2..4cee5a1 100644 --- a/src/EntityFramework.Filters.Tests/EntityFramework.Filters.Tests.csproj +++ b/src/EntityFramework.Filters.Tests/EntityFramework.Filters.Tests.csproj @@ -30,11 +30,13 @@ 4 - - ..\packages\EntityFramework.6.1.0\lib\net45\EntityFramework.dll + + ..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.dll + True - - ..\packages\EntityFramework.6.1.0\lib\net45\EntityFramework.SqlServer.dll + + ..\packages\EntityFramework.6.1.3\lib\net45\EntityFramework.SqlServer.dll + True diff --git a/src/EntityFramework.Filters.Tests/packages.config b/src/EntityFramework.Filters.Tests/packages.config index ef204f6..6138937 100644 --- a/src/EntityFramework.Filters.Tests/packages.config +++ b/src/EntityFramework.Filters.Tests/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file diff --git a/src/EntityFramework.Filters/EntityFramework.Filters.csproj b/src/EntityFramework.Filters/EntityFramework.Filters.csproj index 2668816..dbc3fb8 100644 --- a/src/EntityFramework.Filters/EntityFramework.Filters.csproj +++ b/src/EntityFramework.Filters/EntityFramework.Filters.csproj @@ -32,12 +32,12 @@ - False - ..\packages\EntityFramework.6.1.0\lib\net40\EntityFramework.dll + ..\packages\EntityFramework.6.1.3\lib\net40\EntityFramework.dll + True - False - ..\packages\EntityFramework.6.1.0\lib\net40\EntityFramework.SqlServer.dll + ..\packages\EntityFramework.6.1.3\lib\net40\EntityFramework.SqlServer.dll + True diff --git a/src/EntityFramework.Filters/packages.config b/src/EntityFramework.Filters/packages.config index c1904a8..8db729b 100644 --- a/src/EntityFramework.Filters/packages.config +++ b/src/EntityFramework.Filters/packages.config @@ -1,4 +1,4 @@  - + \ No newline at end of file