|
7 | 7 | using System.Threading.Tasks; |
8 | 8 | using System.Transactions; |
9 | 9 | using EntityFrameworkCore.Projectables.Services; |
| 10 | +using Microsoft.EntityFrameworkCore; |
| 11 | +using Microsoft.EntityFrameworkCore.Diagnostics; |
| 12 | +using Microsoft.EntityFrameworkCore.Infrastructure; |
| 13 | +using Microsoft.EntityFrameworkCore.Metadata; |
10 | 14 | using Microsoft.EntityFrameworkCore.Query; |
11 | 15 | using Microsoft.EntityFrameworkCore.Query.Internal; |
| 16 | +using Microsoft.EntityFrameworkCore.Storage; |
12 | 17 |
|
13 | 18 | namespace EntityFrameworkCore.Projectables.Infrastructure.Internal |
14 | 19 | { |
| 20 | + /// <summary> |
| 21 | + /// Foo |
| 22 | + /// </summary> |
15 | 23 | [System.Diagnostics.CodeAnalysis.SuppressMessage("Usage", "EF1001:Internal EF Core API usage.", Justification = "Needed")] |
16 | | - public sealed class CustomQueryCompiler : IQueryCompiler |
| 24 | + public sealed class CustomQueryCompiler : QueryCompiler |
17 | 25 | { |
18 | 26 | readonly IQueryCompiler _decoratedQueryCompiler; |
19 | 27 | readonly ProjectableExpressionReplacer _projectableExpressionReplacer; |
20 | 28 |
|
21 | | - public CustomQueryCompiler(IQueryCompiler decoratedQueryCompiler) |
| 29 | + public CustomQueryCompiler(IQueryCompiler decoratedQueryCompiler, IQueryContextFactory queryContextFactory, ICompiledQueryCache compiledQueryCache, ICompiledQueryCacheKeyGenerator compiledQueryCacheKeyGenerator, IDatabase database, IDiagnosticsLogger<DbLoggerCategory.Query> logger, ICurrentDbContext currentContext, IEvaluatableExpressionFilter evaluatableExpressionFilter, IModel model) : base(queryContextFactory, compiledQueryCache, compiledQueryCacheKeyGenerator, database, logger, currentContext, evaluatableExpressionFilter, model) |
22 | 30 | { |
23 | 31 | _decoratedQueryCompiler = decoratedQueryCompiler; |
24 | 32 | _projectableExpressionReplacer = new ProjectableExpressionReplacer(new ProjectionExpressionResolver()); |
25 | 33 | } |
26 | 34 |
|
27 | | - public Func<QueryContext, TResult> CreateCompiledAsyncQuery<TResult>(Expression query) |
| 35 | + public override Func<QueryContext, TResult> CreateCompiledAsyncQuery<TResult>(Expression query) |
28 | 36 | => _decoratedQueryCompiler.CreateCompiledAsyncQuery<TResult>(Expand(query)); |
29 | | - public Func<QueryContext, TResult> CreateCompiledQuery<TResult>(Expression query) |
| 37 | + public override Func<QueryContext, TResult> CreateCompiledQuery<TResult>(Expression query) |
30 | 38 | => _decoratedQueryCompiler.CreateCompiledQuery<TResult>(Expand(query)); |
31 | | - public TResult Execute<TResult>(Expression query) |
| 39 | + public override TResult Execute<TResult>(Expression query) |
32 | 40 | => _decoratedQueryCompiler.Execute<TResult>(Expand(query)); |
33 | | - public TResult ExecuteAsync<TResult>(Expression query, CancellationToken cancellationToken) |
| 41 | + public override TResult ExecuteAsync<TResult>(Expression query, CancellationToken cancellationToken) |
34 | 42 | => _decoratedQueryCompiler.ExecuteAsync<TResult>(Expand(query), cancellationToken); |
35 | 43 |
|
36 | 44 | Expression Expand(Expression expression) |
|
0 commit comments