//////////////////////////////////////////////////// To Exchange Model ///////////////////////////////////////////////////// public static (AssemblyExchange assembly, IList <AssemblyExchange> dependencies) ToExchangeModel(this AssemblyModel assembly) { var assemblyExchange = assembly.ToExchange(); var allReferences = assembly.ReferenceProvider.Select(x => x.Value).ToList(); var loadedAssemblies = allReferences.Select(x => x.LoadedAssembly).Distinct().ToList(); var dependencies = loadedAssemblies.Select(x => x.ToExchange()).ToList(); dependencies.AddRange(allReferences.Where(x => x.IsMismatchVersion).Select(x => x.ToExchange())); return(assemblyExchange, dependencies); }