Browse Source

implement async in tenant management repo.

pull/6809/head
Halil İbrahim Kalkan 6 years ago
parent
commit
4296d82981
  1. 10
      modules/tenant-management/src/Volo.Abp.TenantManagement.EntityFrameworkCore/Volo/Abp/TenantManagement/EntityFrameworkCore/EfCoreTenantRepository.cs
  2. 22
      modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo/Abp/TenantManagement/MongoDb/MongoTenantRepository.cs
  3. 2
      modules/tenant-management/test/Volo.Abp.TenantManagement.Domain.Tests/Volo/Abp/TenantManagement/TenantConnectionString_Tests.cs

10
modules/tenant-management/src/Volo.Abp.TenantManagement.EntityFrameworkCore/Volo/Abp/TenantManagement/EntityFrameworkCore/EfCoreTenantRepository.cs

@ -23,7 +23,7 @@ namespace Volo.Abp.TenantManagement.EntityFrameworkCore
bool includeDetails = true, bool includeDetails = true,
CancellationToken cancellationToken = default) CancellationToken cancellationToken = default)
{ {
return await DbSet return await (await GetDbSetAsync())
.IncludeDetails(includeDetails) .IncludeDetails(includeDetails)
.FirstOrDefaultAsync(t => t.Name == name, GetCancellationToken(cancellationToken)); .FirstOrDefaultAsync(t => t.Name == name, GetCancellationToken(cancellationToken));
} }
@ -50,7 +50,7 @@ namespace Volo.Abp.TenantManagement.EntityFrameworkCore
bool includeDetails = false, bool includeDetails = false,
CancellationToken cancellationToken = default) CancellationToken cancellationToken = default)
{ {
return await DbSet return await (await GetDbSetAsync())
.IncludeDetails(includeDetails) .IncludeDetails(includeDetails)
.WhereIf( .WhereIf(
!filter.IsNullOrWhiteSpace(), !filter.IsNullOrWhiteSpace(),
@ -72,9 +72,15 @@ namespace Volo.Abp.TenantManagement.EntityFrameworkCore
).CountAsync(cancellationToken: cancellationToken); ).CountAsync(cancellationToken: cancellationToken);
} }
[Obsolete("Use WithDetailsAsync method.")]
public override IQueryable<Tenant> WithDetails() public override IQueryable<Tenant> WithDetails()
{ {
return GetQueryable().IncludeDetails(); return GetQueryable().IncludeDetails();
} }
public override async Task<IQueryable<Tenant>> WithDetailsAsync()
{
return (await GetQueryableAsync()).IncludeDetails();
}
} }
} }

22
modules/tenant-management/src/Volo.Abp.TenantManagement.MongoDB/Volo/Abp/TenantManagement/MongoDb/MongoTenantRepository.cs

@ -13,18 +13,18 @@ namespace Volo.Abp.TenantManagement.MongoDB
{ {
public class MongoTenantRepository : MongoDbRepository<ITenantManagementMongoDbContext, Tenant, Guid>, ITenantRepository public class MongoTenantRepository : MongoDbRepository<ITenantManagementMongoDbContext, Tenant, Guid>, ITenantRepository
{ {
public MongoTenantRepository(IMongoDbContextProvider<ITenantManagementMongoDbContext> dbContextProvider) public MongoTenantRepository(IMongoDbContextProvider<ITenantManagementMongoDbContext> dbContextProvider)
: base(dbContextProvider) : base(dbContextProvider)
{ {
} }
public virtual async Task<Tenant> FindByNameAsync( public virtual async Task<Tenant> FindByNameAsync(
string name, string name,
bool includeDetails = true, bool includeDetails = true,
CancellationToken cancellationToken = default) CancellationToken cancellationToken = default)
{ {
return await GetMongoQueryable() return await (await GetMongoQueryableAsync(cancellationToken))
.FirstOrDefaultAsync(t => t.Name == name, GetCancellationToken(cancellationToken)); .FirstOrDefaultAsync(t => t.Name == name, GetCancellationToken(cancellationToken));
} }
@ -41,14 +41,14 @@ namespace Volo.Abp.TenantManagement.MongoDB
} }
public virtual async Task<List<Tenant>> GetListAsync( public virtual async Task<List<Tenant>> GetListAsync(
string sorting = null, string sorting = null,
int maxResultCount = int.MaxValue, int maxResultCount = int.MaxValue,
int skipCount = 0, int skipCount = 0,
string filter = null, string filter = null,
bool includeDetails = false, bool includeDetails = false,
CancellationToken cancellationToken = default) CancellationToken cancellationToken = default)
{ {
return await GetMongoQueryable() return await (await GetMongoQueryableAsync(cancellationToken))
.WhereIf<Tenant, IMongoQueryable<Tenant>>( .WhereIf<Tenant, IMongoQueryable<Tenant>>(
!filter.IsNullOrWhiteSpace(), !filter.IsNullOrWhiteSpace(),
u => u =>
@ -62,7 +62,7 @@ namespace Volo.Abp.TenantManagement.MongoDB
public virtual async Task<long> GetCountAsync(string filter = null, CancellationToken cancellationToken = default) public virtual async Task<long> GetCountAsync(string filter = null, CancellationToken cancellationToken = default)
{ {
return await GetMongoQueryable() return await (await GetMongoQueryableAsync(cancellationToken))
.WhereIf<Tenant, IMongoQueryable<Tenant>>( .WhereIf<Tenant, IMongoQueryable<Tenant>>(
!filter.IsNullOrWhiteSpace(), !filter.IsNullOrWhiteSpace(),
u => u =>
@ -70,4 +70,4 @@ namespace Volo.Abp.TenantManagement.MongoDB
).CountAsync(cancellationToken: cancellationToken); ).CountAsync(cancellationToken: cancellationToken);
} }
} }
} }

2
modules/tenant-management/test/Volo.Abp.TenantManagement.Domain.Tests/Volo/Abp/TenantManagement/TenantConnectionString_Tests.cs

@ -10,7 +10,7 @@ namespace Volo.Abp.TenantManagement
[Theory] [Theory]
[InlineData("aaa")] [InlineData("aaa")]
[InlineData("bbb")] [InlineData("bbb")]
public async Task SetValue(string value) public void SetValue(string value)
{ {
var tenantConnectionString = var tenantConnectionString =
new TenantConnectionString(Guid.NewGuid(), "MyConnString", "MyConnString-Value"); new TenantConnectionString(Guid.NewGuid(), "MyConnString", "MyConnString-Value");

Loading…
Cancel
Save