服务端的TigerApi 框架,基于.NET6 2024 版本
Ben Lin
2024-10-24 f7f84b6277c4fca6cd20b0f989f1a47914d20ed8
Tiger.Api/Controllers/Extension.cs
@@ -15,13 +15,14 @@
            // 动态加载多个dll
            string[] assemblyPattern = new[] { "Tiger.Controllers([.].*)*.dll" };
            List<Assembly> assemblies = new List<Assembly>();
            assemblies.AddRange(
                Directory.EnumerateFiles(AppDomain.CurrentDomain.BaseDirectory, "*.dll", SearchOption.AllDirectories)
                              .Where(filename => assemblyPattern.Any(pattern => Regex.IsMatch(filename, pattern)))
                              .Select(Assembly.LoadFrom)
            );
            //List<Assembly> assemblies = new List<Assembly>();
            //assemblies.AddRange(
            //    Directory.EnumerateFiles(AppDomain.CurrentDomain.BaseDirectory, "*.dll", SearchOption.AllDirectories)
            //                  .Where(filename => assemblyPattern.Any(pattern => Regex.IsMatch(filename, pattern)))
            //                  .Select(Assembly.LoadFrom)
            //);
            var assemblies = PluginManager.Load(AppDomain.CurrentDomain.BaseDirectory, "Tiger.Controllers([.].*)*.dll");
            foreach (var assembly in assemblies)
            {
                builder = builder.AddApplicationPart(assembly);