using JNPF.DependencyInjection; using JNPF.Reflection; using Microsoft.Extensions.DependencyInjection; namespace JNPF.VisualDev { [SuppressSniffer] public static class OverideVisualDevServiceCollectionExtensions { /// /// 添加重写在线开发接口的服务 /// /// /// public static IServiceCollection AddOverideVisualDev(this IServiceCollection services) { var actions = App.EffectiveTypes.Where(u => u.IsClass && !u.IsInterface && !u.IsAbstract && typeof(IOverideVisualDevService).IsAssignableFrom(u)).ToList(); foreach (var item in actions) { var attr = item.GetAttribute(); if (attr != null) { OverideVisualDevManager.Add(attr.ModelId, item); } } return services; } } }