public List <object> GetSolve <TInterface>(IAssemblyWorker reflectionWorker, ITypeWorker typeWorker, ISearcher seacher) { var solutionPath = GetSolutionPath(); var dllPaths = seacher.GetFilePathsByRoot(solutionPath).FilesWithExtension(".dll"); var types = reflectionWorker.GetTypesFromDlls(dllPaths, typeWorker.IsClassWithInterface <TInterface>); var objects = types.Select(typeWorker.GetObject); return(objects.ToList()); }