maliming 3 years ago
parent 18fb3b2069
commit 3fa985e923

@ -2,23 +2,23 @@
using Volo.Abp.Caching;
using Volo.Abp.Domain.Repositories;
using Volo.Abp.ObjectMapping;
using Volo.Abp.Uow;
namespace Volo.Abp.Domain.Entities.Caching;
public class EntityCacheWithObjectMapper<TEntity, TEntityCacheItem, TKey> :
EntityCacheBase<TEntity, TEntityCacheItem, TKey>
EntityCacheBase<TEntity, TEntityCacheItem, TKey>
where TEntity : Entity<TKey>
where TEntityCacheItem : class
{
protected IObjectMapper ObjectMapper { get; }
public EntityCacheWithObjectMapper(
IReadOnlyRepository<TEntity, TKey> repository,
IReadOnlyRepository<TEntity, TKey> repository,
IDistributedCache<TEntityCacheItem, TKey> cache,
IUnitOfWorkManager unitOfWorkManager,
IObjectMapper objectMapper)
: base(
repository,
cache)
: base(repository, cache, unitOfWorkManager)
{
ObjectMapper = objectMapper;
}
@ -29,7 +29,7 @@ public class EntityCacheWithObjectMapper<TEntity, TEntityCacheItem, TKey> :
{
return null;
}
if (typeof(TEntity) == typeof(TEntityCacheItem))
{
return entity.As<TEntityCacheItem>();
@ -37,4 +37,4 @@ public class EntityCacheWithObjectMapper<TEntity, TEntityCacheItem, TKey> :
return ObjectMapper.Map<TEntity, TEntityCacheItem>(entity);
}
}
}

@ -1,22 +1,22 @@
using Volo.Abp.Caching;
using Volo.Abp.Domain.Repositories;
using Volo.Abp.ObjectMapping;
using Volo.Abp.Uow;
namespace Volo.Abp.Domain.Entities.Caching;
public class EntityCacheWithObjectMapperContext<TObjectMapperContext, TEntity, TEntityCacheItem, TKey> :
EntityCacheWithObjectMapper<TEntity, TEntityCacheItem, TKey>
EntityCacheWithObjectMapper<TEntity, TEntityCacheItem, TKey>
where TEntity : Entity<TKey>
where TEntityCacheItem : class
{
public EntityCacheWithObjectMapperContext(
IReadOnlyRepository<TEntity, TKey> repository,
IDistributedCache<TEntityCacheItem, TKey> cache,
IObjectMapper<TObjectMapperContext> objectMapper) // Intentionally injected with TContext
: base(
repository,
cache,
objectMapper)
IUnitOfWorkManager unitOfWorkManager,
IObjectMapper objectMapper)// Intentionally injected with TContext
: base(repository, cache, unitOfWorkManager, objectMapper)
{
}
}
}

@ -1,24 +1,25 @@
using Volo.Abp.Caching;
using Volo.Abp.Domain.Repositories;
using Volo.Abp.Uow;
namespace Volo.Abp.Domain.Entities.Caching;
public class EntityCacheWithoutCacheItem<TEntity, TKey> :
EntityCacheBase<TEntity, TEntity, TKey>
EntityCacheBase<TEntity, TEntity, TKey>
where TEntity : Entity<TKey>
{
public EntityCacheWithoutCacheItem(
IReadOnlyRepository<TEntity, TKey> repository,
IDistributedCache<TEntity, TKey> cache)
: base(
repository,
cache)
IReadOnlyRepository<TEntity, TKey> repository,
IDistributedCache<TEntity, TKey> cache,
IUnitOfWorkManager unitOfWorkManager)
: base(repository, cache, unitOfWorkManager)
{
}
protected override TEntity MapToCacheItem(TEntity entity)
{
return entity;
}
}
}

Loading…
Cancel
Save