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[]>(); }
|
请发表评论