src/Tools/BuildBoss/ProjectCheckerUtil.cs
/// <summary>
/// In order to ensure all dependencies are properly copied on deployment projects, the declared reference
/// set much match the transitive dependency set.  When there is a difference it represents dependencies that
/// MSBuild won't deploy on build.
/// </summary>
In order to ensure all dependencies are properly copied on deployment projects, the declared reference
set much match the transitive dependency set.  When there is a difference it represents dependencies that
MSBuild won't deploy on build.
In order to ensure all dependencies are properly copied on deployment projects the declared reference set much match the transitive dependency set . When there is a difference it represents dependencies that MSBuild won ' t deploy on build .
private bool CheckTransitiveReferences(TextWriter textWriter, IEnumerable<ProjectKey> declaredReferences)
        {
            if (!_projectUtil.IsDeploymentProject)
            {
                return true;
            }
            var list = GetProjectReferencesTransitive(declaredReferences);
            var set = new HashSet<ProjectKey>(declaredReferences);
            var allGood = true;
            foreach (var key in list)
            {
                if (!set.Contains(key))
                {
                    textWriter.WriteLine($"Missing project reference {key.FileName}");
                    allGood = false;
                }
            }
            return allGood;
        }
private bool CheckTransitiveReferences ( TextWriter textWriter , IEnumerable < ProjectKey > declaredReferences ) { if ( ! _projectUtil . IsDeploymentProject ) { return true ; } var list = GetProjectReferencesTransitive ( declaredReferences ) ; var set = new HashSet < ProjectKey > ( declaredReferences ) ; var allGood = true ; foreach ( var key in list ) { if ( ! set . Contains ( key ) ) { textWriter . WriteLine ( $" Missing project reference  { key . FileName } " ) ; allGood = false ; } } return allGood ; }
In order to ensure all dependencies are properly copied on deployment projects, the declared reference
set much match the transitive dependency set.
In order to ensure all dependencies are properly copied on deployment projects the declared reference set much match the transitive dependency set .
textWriter
TextWriter
declaredReferences
IEnumerable<ProjectKey>