예제 #1
0
        private void Parse(string nuspecFile)
        {
            // Parse dependencies
            var doc = new XmlDocument();

            doc.Load(nuspecFile);

            var mgr = new XmlNamespaceManager(doc.NameTable);

            mgr.AddNamespace("nu", "http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd");
            var namespaceNodes   = doc.SelectNodes("nu:package/nu:metadata/nu:dependencies/nu:dependency", mgr);
            var noNameSpaceNodes = doc.SelectNodes("package/metadata/dependencies/dependency");

            if (namespaceNodes != null)
            {
                foreach (XmlNode depdencencyNode in namespaceNodes)
                {
                    var nuspecDependency = XmlDependencyConverter.Convert(depdencencyNode);

                    this.Dependencies.Add(nuspecDependency);
                }
            }

            if (noNameSpaceNodes != null)
            {
                foreach (XmlNode depdencencyNode in noNameSpaceNodes)
                {
                    var nuspecDependency = XmlDependencyConverter.Convert(depdencencyNode);

                    this.Dependencies.Add(nuspecDependency);
                }
            }
        }
예제 #2
0
        private void Parse(string nugetConfigfile)
        {
            // Parse dependencies
            var doc = new XmlDocument();

            doc.Load(nugetConfigfile);

            var packageNodes = doc.SelectNodes("packages/package");

            if (packageNodes == null)
            {
                return;
            }

            foreach (XmlNode depdencencyNode in packageNodes)
            {
                var nuspecDependency = XmlDependencyConverter.Convert(depdencencyNode);

                this.Dependencies.Add(nuspecDependency);
            }
        }