From 6b6bc7804455478b21a84a4090e9f3593626d2bb Mon Sep 17 00:00:00 2001 From: Fati Iseni Date: Sun, 14 May 2023 21:26:11 +0200 Subject: [PATCH 1/2] Updated projects, drop support for old TFMs. --- ...is.Specification.EntityFrameworkCore.csproj | 18 +++--------------- .../ContextFactoryRepositoryBaseOfT.cs | 7 +++++++ .../RepositoryBaseOfT.cs | 2 +- .../Ardalis.Specification.csproj | 3 +-- .../IReadRepositoryBase.cs | 2 +- .../Ardalis.SampleApp.Core.csproj | 2 +- .../Data/CachedCustomerRepository.cs | 6 ++++++ 7 files changed, 20 insertions(+), 20 deletions(-) diff --git a/Specification.EntityFrameworkCore/src/Ardalis.Specification.EntityFrameworkCore/Ardalis.Specification.EntityFrameworkCore.csproj b/Specification.EntityFrameworkCore/src/Ardalis.Specification.EntityFrameworkCore/Ardalis.Specification.EntityFrameworkCore.csproj index b310acc6..db11e20a 100644 --- a/Specification.EntityFrameworkCore/src/Ardalis.Specification.EntityFrameworkCore/Ardalis.Specification.EntityFrameworkCore.csproj +++ b/Specification.EntityFrameworkCore/src/Ardalis.Specification.EntityFrameworkCore/Ardalis.Specification.EntityFrameworkCore.csproj @@ -1,7 +1,7 @@  - net6.0;netstandard2.1 + net6.0 Ardalis.Specification.EntityFrameworkCore Ardalis.Specification.EntityFrameworkCore true @@ -34,20 +34,8 @@ - - - - - - - - - - - - - - + + diff --git a/Specification.EntityFrameworkCore/src/Ardalis.Specification.EntityFrameworkCore/ContextFactoryRepositoryBaseOfT.cs b/Specification.EntityFrameworkCore/src/Ardalis.Specification.EntityFrameworkCore/ContextFactoryRepositoryBaseOfT.cs index 0c10ec74..961505a3 100644 --- a/Specification.EntityFrameworkCore/src/Ardalis.Specification.EntityFrameworkCore/ContextFactoryRepositoryBaseOfT.cs +++ b/Specification.EntityFrameworkCore/src/Ardalis.Specification.EntityFrameworkCore/ContextFactoryRepositoryBaseOfT.cs @@ -129,6 +129,13 @@ public async Task AnyAsync(CancellationToken cancellationToken = default) return await dbContext.Set().AnyAsync(cancellationToken); } + /// + public IAsyncEnumerable AsAsyncEnumerable(ISpecification specification) + { + using var dbContext = this.dbContextFactory.CreateDbContext(); + return ApplySpecification(specification, dbContext).AsAsyncEnumerable(); + } + /// public async Task AddAsync(TEntity entity, CancellationToken cancellationToken = default) { diff --git a/Specification.EntityFrameworkCore/src/Ardalis.Specification.EntityFrameworkCore/RepositoryBaseOfT.cs b/Specification.EntityFrameworkCore/src/Ardalis.Specification.EntityFrameworkCore/RepositoryBaseOfT.cs index d9ce6b80..564b6dab 100644 --- a/Specification.EntityFrameworkCore/src/Ardalis.Specification.EntityFrameworkCore/RepositoryBaseOfT.cs +++ b/Specification.EntityFrameworkCore/src/Ardalis.Specification.EntityFrameworkCore/RepositoryBaseOfT.cs @@ -176,7 +176,7 @@ public virtual async Task AnyAsync(CancellationToken cancellationToken = d /// public virtual IAsyncEnumerable AsAsyncEnumerable(ISpecification specification) { - return ApplySpecification(specification, true).AsAsyncEnumerable(); + return ApplySpecification(specification).AsAsyncEnumerable(); } /// diff --git a/Specification/src/Ardalis.Specification/Ardalis.Specification.csproj b/Specification/src/Ardalis.Specification/Ardalis.Specification.csproj index 281a5f76..cafbc5f1 100644 --- a/Specification/src/Ardalis.Specification/Ardalis.Specification.csproj +++ b/Specification/src/Ardalis.Specification/Ardalis.Specification.csproj @@ -1,7 +1,7 @@  - netstandard2.0 + net6.0;netstandard2.0 Ardalis.Specification Ardalis.Specification true @@ -33,7 +33,6 @@ - diff --git a/Specification/src/Ardalis.Specification/IReadRepositoryBase.cs b/Specification/src/Ardalis.Specification/IReadRepositoryBase.cs index 14f639cd..12de01a1 100644 --- a/Specification/src/Ardalis.Specification/IReadRepositoryBase.cs +++ b/Specification/src/Ardalis.Specification/IReadRepositoryBase.cs @@ -168,7 +168,7 @@ public interface IReadRepositoryBase where T : class Task AnyAsync(CancellationToken cancellationToken = default); -#if !NETSTANDARD2_0 +#if NET6_0_OR_GREATER /// /// Finds all entities of , that matches the encapsulated query logic of the /// , from the database. diff --git a/sample/Ardalis.SampleApp.Core/Ardalis.SampleApp.Core.csproj b/sample/Ardalis.SampleApp.Core/Ardalis.SampleApp.Core.csproj index 15ea71d6..9edec766 100644 --- a/sample/Ardalis.SampleApp.Core/Ardalis.SampleApp.Core.csproj +++ b/sample/Ardalis.SampleApp.Core/Ardalis.SampleApp.Core.csproj @@ -1,7 +1,7 @@ - netstandard2.0 + net6.0 diff --git a/sample/Ardalis.SampleApp.Infrastructure/Data/CachedCustomerRepository.cs b/sample/Ardalis.SampleApp.Infrastructure/Data/CachedCustomerRepository.cs index 9b9012cd..3835d5a5 100644 --- a/sample/Ardalis.SampleApp.Infrastructure/Data/CachedCustomerRepository.cs +++ b/sample/Ardalis.SampleApp.Infrastructure/Data/CachedCustomerRepository.cs @@ -29,6 +29,12 @@ public CachedRepository(IMemoryCache cache, .SetAbsoluteExpiration(relative: TimeSpan.FromSeconds(10)); } + /// + public virtual IAsyncEnumerable AsAsyncEnumerable(ISpecification specification) + { + return _sourceRepository.AsAsyncEnumerable(specification); + } + /// public Task AnyAsync(Specification.ISpecification specification, CancellationToken cancellationToken = default) { From 11fcdde396a11d04cb3fef2174924c8c60ad4abf Mon Sep 17 00:00:00 2001 From: Fati Iseni Date: Sun, 14 May 2023 22:22:44 +0200 Subject: [PATCH 2/2] Minor fix. --- .../Ardalis.Specification.EntityFrameworkCore.csproj | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Specification.EntityFrameworkCore/src/Ardalis.Specification.EntityFrameworkCore/Ardalis.Specification.EntityFrameworkCore.csproj b/Specification.EntityFrameworkCore/src/Ardalis.Specification.EntityFrameworkCore/Ardalis.Specification.EntityFrameworkCore.csproj index db11e20a..f7a3fa88 100644 --- a/Specification.EntityFrameworkCore/src/Ardalis.Specification.EntityFrameworkCore/Ardalis.Specification.EntityFrameworkCore.csproj +++ b/Specification.EntityFrameworkCore/src/Ardalis.Specification.EntityFrameworkCore/Ardalis.Specification.EntityFrameworkCore.csproj @@ -1,7 +1,7 @@  - net6.0 + net6.0 Ardalis.Specification.EntityFrameworkCore Ardalis.Specification.EntityFrameworkCore true