using Microsoft.Extensions.Caching.Memory; 
 | 
using Microsoft.Extensions.DependencyInjection; 
 | 
using Microsoft.Extensions.Options; 
 | 
using System; 
 | 
using WIDESEA_Core.Caches; 
 | 
  
 | 
namespace WIDESEA_Core.Extensions 
 | 
{ 
 | 
    /// <summary> 
 | 
    /// Memory缓存 启动服务 
 | 
    /// </summary> 
 | 
    public static class MemoryCacheSetup 
 | 
    { 
 | 
        public static void AddMemoryCacheSetup(this IServiceCollection services) 
 | 
        { 
 | 
            if (services == null) throw new ArgumentNullException(nameof(services)); 
 | 
  
 | 
            services.AddSingleton<ICacheService, MemoryCacheService>(); 
 | 
            services.AddMemoryCache(); 
 | 
            //services.AddSingleton<IMemoryCache>(factory => 
 | 
            //{ 
 | 
            //    var value = factory.GetRequiredService<IOptions<MemoryCacheOptions>>(); 
 | 
            //    var cache = new MemoryCache(value); 
 | 
            //    return cache; 
 | 
            //}); 
 | 
        } 
 | 
    } 
 | 
} 
 |