diff --git a/src/EntityFrameworkCore.Projectables/Infrastructure/Internal/CustomQueryCompiler.cs b/src/EntityFrameworkCore.Projectables/Infrastructure/Internal/CustomQueryCompiler.cs
index 2a85c9c..5f66799 100644
--- a/src/EntityFrameworkCore.Projectables/Infrastructure/Internal/CustomQueryCompiler.cs
+++ b/src/EntityFrameworkCore.Projectables/Infrastructure/Internal/CustomQueryCompiler.cs
@@ -7,30 +7,38 @@
using System.Threading.Tasks;
using System.Transactions;
using EntityFrameworkCore.Projectables.Services;
+using Microsoft.EntityFrameworkCore;
+using Microsoft.EntityFrameworkCore.Diagnostics;
+using Microsoft.EntityFrameworkCore.Infrastructure;
+using Microsoft.EntityFrameworkCore.Metadata;
using Microsoft.EntityFrameworkCore.Query;
using Microsoft.EntityFrameworkCore.Query.Internal;
+using Microsoft.EntityFrameworkCore.Storage;
namespace EntityFrameworkCore.Projectables.Infrastructure.Internal
{
+ ///
+ /// Foo
+ ///
[System.Diagnostics.CodeAnalysis.SuppressMessage("Usage", "EF1001:Internal EF Core API usage.", Justification = "Needed")]
- public sealed class CustomQueryCompiler : IQueryCompiler
+ public sealed class CustomQueryCompiler : QueryCompiler
{
readonly IQueryCompiler _decoratedQueryCompiler;
readonly ProjectableExpressionReplacer _projectableExpressionReplacer;
- public CustomQueryCompiler(IQueryCompiler decoratedQueryCompiler)
+ public CustomQueryCompiler(IQueryCompiler decoratedQueryCompiler, IQueryContextFactory queryContextFactory, ICompiledQueryCache compiledQueryCache, ICompiledQueryCacheKeyGenerator compiledQueryCacheKeyGenerator, IDatabase database, IDiagnosticsLogger logger, ICurrentDbContext currentContext, IEvaluatableExpressionFilter evaluatableExpressionFilter, IModel model) : base(queryContextFactory, compiledQueryCache, compiledQueryCacheKeyGenerator, database, logger, currentContext, evaluatableExpressionFilter, model)
{
_decoratedQueryCompiler = decoratedQueryCompiler;
_projectableExpressionReplacer = new ProjectableExpressionReplacer(new ProjectionExpressionResolver());
}
- public Func CreateCompiledAsyncQuery(Expression query)
+ public override Func CreateCompiledAsyncQuery(Expression query)
=> _decoratedQueryCompiler.CreateCompiledAsyncQuery(Expand(query));
- public Func CreateCompiledQuery(Expression query)
+ public override Func CreateCompiledQuery(Expression query)
=> _decoratedQueryCompiler.CreateCompiledQuery(Expand(query));
- public TResult Execute(Expression query)
+ public override TResult Execute(Expression query)
=> _decoratedQueryCompiler.Execute(Expand(query));
- public TResult ExecuteAsync(Expression query, CancellationToken cancellationToken)
+ public override TResult ExecuteAsync(Expression query, CancellationToken cancellationToken)
=> _decoratedQueryCompiler.ExecuteAsync(Expand(query), cancellationToken);
Expression Expand(Expression expression)