Exemple #1
0
    ////////////////////////////////////////////////////  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);
    }