zoukankan      html  css  js  c++  java
  • ASP.NET Core2,通过反射批量注入程序集

     public void ConfigureServices(IServiceCollection services)
            {
                string strValue = Configuration.GetSection("Appsetings").GetSection("key").Value;
                foreach (var item in GetClassName(strValue))
                {
                    foreach (var typeArray in item.Value)
                    {
                        services.AddScoped(typeArray, item.Key);
                    }
                }
              
                services.AddMvc();
            }
            private static Dictionary<Type, Type[]> GetClassName(string assemblyName)
            {
                if (!String.IsNullOrEmpty(assemblyName))
                {
                    Assembly assembly = Assembly.Load(assemblyName);
                    List<Type> ts = assembly.GetTypes().ToList();

                    var result = new Dictionary<Type, Type[]>();
                    foreach (var item in ts.Where(s => !s.IsInterface))
                    {
                        var interfaceType = item.GetInterfaces();
                        if (item.IsGenericType) continue;
                        result.Add(item, interfaceType);
                    }
                    return result;
                }
                return new Dictionary<Type, Type[]>();
            }

  • 相关阅读:
    小程序订阅消息(服务通知)实现 WX.REQUESTSUBSCRIBEMESSAGE
    将打包完成的文件上传到百度云
    vue传值
    WebSocket心跳检测和重连机制
    vue 使用vuex 刷新时保存数据
    webpack优化项目
    DNS 解析 prefeath
    prefetch和preload
    DIV 自动滚动功能及滚动条颜色修改
    有关JQuery
  • 原文地址:https://www.cnblogs.com/Mrkaisa/p/8431355.html
Copyright © 2011-2022 走看看