CachingExtension.cs 807 B

123456789101112131415161718192021222324252627
  1. using Microsoft.Extensions.DependencyInjection;
  2. namespace GxPress.Api.ServiceExtensions
  3. {
  4. public static class CachingExtension
  5. {
  6. public static IServiceCollection AddDistributedCache(this IServiceCollection services, string cacheConnectionString)
  7. {
  8. var isSettings = false;
  9. if (!string.IsNullOrEmpty(cacheConnectionString))
  10. {
  11. isSettings = true;
  12. services.AddStackExchangeRedisCache(options =>
  13. {
  14. options.Configuration = cacheConnectionString;
  15. options.InstanceName = "";
  16. });
  17. }
  18. if (!isSettings)
  19. {
  20. services.AddDistributedMemoryCache();
  21. }
  22. return services;
  23. }
  24. }
  25. }