File tree Expand file tree Collapse file tree
src/Riven.Modular/Modular/PlugIns Expand file tree Collapse file tree Original file line number Diff line number Diff line change 11using JetBrains . Annotations ;
2+
23using System ;
34using System . Collections . Generic ;
45using System . IO ;
@@ -33,7 +34,8 @@ public Type[] GetModules()
3334 {
3435 var modules = new List < Type > ( ) ;
3536
36- foreach ( var assembly in GetAssemblies ( ) )
37+ var assemblies = GetAssemblies ( ) ;
38+ foreach ( var assembly in assemblies )
3739 {
3840 try
3941 {
@@ -54,16 +56,30 @@ public Type[] GetModules()
5456 return modules . ToArray ( ) ;
5557 }
5658
57- protected virtual IEnumerable < Assembly > GetAssemblies ( )
59+ protected virtual List < Assembly > GetAssemblies ( )
5860 {
59- var assemblyFiles = this . GetAssemblyFiles ( Folder , SearchOption ) ;
61+ var assemblies = new List < Assembly > ( ) ;
62+
63+ var assemblyFilePaths = this . GetAssemblyFiles ( Folder , SearchOption ) . ToList ( ) ;
6064
6165 if ( Filter != null )
6266 {
63- assemblyFiles = assemblyFiles . Where ( Filter ) ;
67+ assemblyFilePaths = ( List < string > ) assemblyFilePaths . Where ( Filter ) ;
68+ }
69+
70+ foreach ( var assemblyFile in assemblyFilePaths )
71+ {
72+
73+ try
74+ {
75+ assemblies . Add ( AssemblyLoadContext . Default . LoadFromAssemblyPath ( assemblyFile ) ) ;
76+ }
77+ catch
78+ {
79+ }
6480 }
6581
66- return assemblyFiles . Select ( AssemblyLoadContext . Default . LoadFromAssemblyPath ) ;
82+ return assemblies ;
6783 }
6884
6985 protected virtual IEnumerable < string > GetAssemblyFiles ( string folderPath , SearchOption searchOption )
You can’t perform that action at this time.
0 commit comments