Exemple #1
0
        internal IEnumerable <object> GetChildNodes(TargetFrameworkNode frameworkNode)
        {
            bool addedFrameworkReferencesNode = false;

            if (frameworkNode != null)
            {
                var frameworkReferencesNode = new FrameworkReferencesNode(this);
                if (frameworkReferencesNode.HasChildNodes())
                {
                    addedFrameworkReferencesNode = true;
                    yield return(frameworkReferencesNode);
                }

                var packagesNode = new PackageDependenciesNode(frameworkNode);
                if (packagesNode.HasChildNodes())
                {
                    yield return(packagesNode);
                }

                if (!addedFrameworkReferencesNode)
                {
                    var sdkNode = new SdkDependenciesNode(frameworkNode);
                    if (sdkNode.HasChildNodes())
                    {
                        yield return(sdkNode);
                    }
                }
            }
            else
            {
                var frameworkReferencesNode = new FrameworkReferencesNode(this);
                if (frameworkReferencesNode.HasChildNodes())
                {
                    addedFrameworkReferencesNode = true;
                    yield return(frameworkReferencesNode);
                }

                var packagesNode = new PackageDependenciesNode(this);
                if (packagesNode.HasChildNodes())
                {
                    yield return(packagesNode);
                }

                if (!addedFrameworkReferencesNode)
                {
                    var sdkNode = new SdkDependenciesNode(this);
                    if (sdkNode.HasChildNodes())
                    {
                        yield return(sdkNode);
                    }
                }
            }

            var assembliesNode = new AssemblyDependenciesNode(Project);

            if (assembliesNode.HasChildNodes())
            {
                yield return(assembliesNode);
            }

            var projectsNode = new ProjectDependenciesNode(Project);

            if (projectsNode.HasChildNodes())
            {
                yield return(projectsNode);
            }
        }
 public FrameworkReferencesNode(TargetFrameworkNode frameworkNode)
 {
     FrameworkNode = frameworkNode;
     ParentNode    = frameworkNode.DependenciesNode;
 }
 public SdkDependenciesNode(TargetFrameworkNode frameworkNode)
 {
     FrameworkNode = frameworkNode;
     ParentNode    = frameworkNode.DependenciesNode;
 }