using Admin.Core.Common; using Admin.Core.Tasks; using Aucma.Core.Scanner; using Aucma.Core.Tasks; using Microsoft.Extensions.DependencyInjection; using Quartz; using Quartz.Spi; using SqlSugar; using System; using System.Collections.Generic; using System.Linq; using System.Reflection; using System.Threading.Tasks; namespace Admin.Core.Extensions { /// /// 启动服务 /// public static class AucamSheetMetalTaskSetup { public static void AddAucmaSheetMetalTaskSetup(this IServiceCollection services) { //services.AddSingleton(); //var baseType = typeof(IAucamSheetMetalTaskService); //var path = AppDomain.CurrentDomain.RelativeSearchPath ?? AppDomain.CurrentDomain.BaseDirectory; //var referencedAssemblies = System.IO.Directory.GetFiles(path, "Aucma.SheetMetalCore.Tasks.dll").Select(Assembly.LoadFrom).ToArray(); //var types = referencedAssemblies // .SelectMany(a => a.DefinedTypes) // .Select(type => type.AsType()) // .Where(x => x != baseType && baseType.IsAssignableFrom(x)).ToArray(); //var implementTypes = types.Where(x => x.IsClass).ToArray(); //foreach (var implementType in implementTypes) //{ // services.AddTransient(implementType); //} } } }