예제 #1
0
        // A package is a TransitiveProjectReference if it is a project, is not directly referenced,
        // and does not contain a placeholder compile time assembly
        public static bool IsTransitiveProjectReference(this LockFileTargetLibrary library, LockFile lockFile, ref HashSet <string> directProjectDependencies)
        {
            if (!library.IsProject())
            {
                return(false);
            }

            if (directProjectDependencies == null)
            {
                directProjectDependencies = lockFile.GetProjectFileDependencySet();
            }

            return(!directProjectDependencies.Contains(library.Name) &&
                   !library.CompileTimeAssemblies.Any(f => f.IsPlaceholderFile()));
        }