|  | @@ -33,6 +33,7 @@ using Admin.Core.Aop;
 | 
	
		
			
				|  |  |  using Admin.Core.Logs;
 | 
	
		
			
				|  |  |  using PermissionHandler = Admin.Core.Auth.PermissionHandler;
 | 
	
		
			
				|  |  |  using Admin.Core.Extensions;
 | 
	
		
			
				|  |  | +using Admin.Core.Common.Attributes;
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  namespace Admin.Core
 | 
	
		
			
				|  |  |  {
 | 
	
	
		
			
				|  | @@ -51,7 +52,6 @@ namespace Admin.Core
 | 
	
		
			
				|  |  |          public void ConfigureServices(IServiceCollection services)
 | 
	
		
			
				|  |  |          {
 | 
	
		
			
				|  |  |              services.AddSingleton(_appConfig);
 | 
	
		
			
				|  |  | -            services.AddSingleton(typeof(ApiHelper));
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |              //上传配置
 | 
	
		
			
				|  |  |              var uploadConfig = new ConfigHelper().Load("uploadconfig", _env.EnvironmentName, true);
 | 
	
	
		
			
				|  | @@ -228,8 +228,8 @@ namespace Admin.Core
 | 
	
		
			
				|  |  |                  #endregion
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                  #region Service
 | 
	
		
			
				|  |  | -                var assemblysServices = Assembly.Load("Admin.Core.Service");
 | 
	
		
			
				|  |  | -                builder.RegisterAssemblyTypes(assemblysServices)
 | 
	
		
			
				|  |  | +                var assemblyServices = Assembly.Load("Admin.Core.Service");
 | 
	
		
			
				|  |  | +                builder.RegisterAssemblyTypes(assemblyServices)
 | 
	
		
			
				|  |  |                  .AsImplementedInterfaces()
 | 
	
		
			
				|  |  |                  .InstancePerDependency()
 | 
	
		
			
				|  |  |                  .EnableInterfaceInterceptors()
 | 
	
	
		
			
				|  | @@ -237,11 +237,18 @@ namespace Admin.Core
 | 
	
		
			
				|  |  |                  #endregion
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |                  #region Repository
 | 
	
		
			
				|  |  | -                var assemblysRepository = Assembly.Load("Admin.Core.Repository");
 | 
	
		
			
				|  |  | -                builder.RegisterAssemblyTypes(assemblysRepository)
 | 
	
		
			
				|  |  | +                var assemblyRepository = Assembly.Load("Admin.Core.Repository");
 | 
	
		
			
				|  |  | +                builder.RegisterAssemblyTypes(assemblyRepository)
 | 
	
		
			
				|  |  |                  .AsImplementedInterfaces()
 | 
	
		
			
				|  |  |                  .InstancePerDependency();
 | 
	
		
			
				|  |  |                  #endregion
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                //单例注入
 | 
	
		
			
				|  |  | +                var assemblyCore = Assembly.Load("Admin.Core");
 | 
	
		
			
				|  |  | +                var assemblyCommon = Assembly.Load("Admin.Core.Common");
 | 
	
		
			
				|  |  | +                builder.RegisterAssemblyTypes(assemblyCore,assemblyCommon)
 | 
	
		
			
				|  |  | +                .Where(t => t.GetCustomAttribute<SingleInstanceAttribute>() != null)
 | 
	
		
			
				|  |  | +                .SingleInstance();
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  |              catch (Exception ex)
 | 
	
		
			
				|  |  |              {
 |