Beispiel #1
0
        private IEnumerable <FilePath> FilterCompatibleAssemblies(
            IEnumerable <FilePath> assemblies, DirectoryPath packageDirectory)
        {
            var targetFramework = _environment.GetTargetFramework();

            // standardize assembly paths as relative to package directory
            var standardizedAssemblyPaths =
                assemblies.Select(a => a.IsRelative ? a : a.FullPath.Substring(packageDirectory.FullPath.Length + 1))
                .ToArray();

            var compatibleAssemblyPaths =
                _assemblyCompatibilityFilter.FilterCompatibleAssemblies(targetFramework, standardizedAssemblyPaths);

            // return as absolute paths
            return(compatibleAssemblyPaths
                   .Select(cp => cp.MakeAbsolute(packageDirectory)));
        }