private static ReadOnlyArray<Module> CreateAssemblyModules(PEFileReader peFileReader, string assemblyResolvedPath, MetadataFileProvider fileProvider) { List<Module> modules = new List<Module>(); modules.Add(new Module(peFileReader)); foreach (string moduleFileName in peFileReader.GetMetadataModuleNames()) { string modulePath; try { modulePath = fileProvider.ProvideModuleFile(assemblyResolvedPath, moduleFileName); } catch (Exception e) { throw new FileNotFoundException(e.Message, moduleFileName); } if (modulePath == null) { throw new FileNotFoundException("Module not found", moduleFileName); } modules.Add(CreateModuleFromFile(modulePath)); } return modules.AsReadOnly<Module>(); }
private static ReadOnlyArray <Module> CreateAssemblyModules(PEFileReader peFileReader, string assemblyResolvedPath, MetadataFileProvider fileProvider) { List <Module> modules = new List <Module>(); modules.Add(new Module(peFileReader)); foreach (string moduleFileName in peFileReader.GetMetadataModuleNames()) { string modulePath; try { modulePath = fileProvider.ProvideModuleFile(assemblyResolvedPath, moduleFileName); } catch (Exception e) { throw new FileNotFoundException(e.Message, moduleFileName); } if (modulePath == null) { throw new FileNotFoundException("Module not found", moduleFileName); } modules.Add(CreateModuleFromFile(modulePath)); } return(modules.AsReadOnly <Module>()); }