WhereControllerType() static private method

static private WhereControllerType ( IEnumerable types ) : IEnumerable
types IEnumerable
return IEnumerable
示例#1
0
        public IEnumerable <Type> GetControllerTypes(Assembly[] assemblies)
        {
            IEnumerable <Assembly> controllerAssemblies =
                new List <Assembly>(AppDomain.CurrentDomain.GetAssemblies()).Union(assemblies);

            Type[]      types           = controllerAssemblies.SelectMany(a => a.GetTypes()).ToArray();
            List <Type> controllerTypes = ControllerResolver.WhereControllerType(types).ToList();

            return(controllerTypes);
        }
示例#2
0
        public IEnumerable <Type> GetControllerTypes()
        {
            var types = GetLoadedTypes();
            var tempControllerTypes = ControllerResolver.WhereControllerType(types).ToList();
            var controllerTypes     = tempControllerTypes.Where(t => t.Assembly.FullName.Substring(0, 1) != RoslynAssemblyNameCharacter).ToList();
            var roslynTypes         = tempControllerTypes.Where(t => t.Assembly.FullName.StartsWith(RoslynAssemblyNameCharacter));

            controllerTypes.Add(roslynTypes.Last());
            foreach (var controller in controllerTypes)
            {
                _logger.Debug(string.Format("ScriptCs.WebApi - Found controller: {0}", controller.FullName));
            }
            return(controllerTypes);
        }