public static IEnumerable <string> GetProjectReferenceRelativePaths(this ProjectReferenceItemGroupXElement projectReferenceItemGroup)
 {
     foreach (var projectReferenceElement in projectReferenceItemGroup.Value.Elements().Where(x => x.Name == ProjectFileXmlElementNames.ProjectReference))
     {
         yield return(projectReferenceElement.Attribute(ProjectFileXmlAttributeNames.Include).Value);
     }
 }
        public static void RemoveProjectReference(this ProjectReferenceItemGroupXElement projectReferenceItemGroup, string projectFileRelativeProjectFilePath)
        {
            var projectReferenceElement = projectReferenceItemGroup.Value.Elements(ProjectFileXmlElementNames.ProjectReference)
                                          .Where(x => x.Attributes(ProjectFileXmlAttributeNames.Include).Where(y => y.Value == projectFileRelativeProjectFilePath).Any())
                                          .Single();

            projectReferenceElement.Remove();
        }
        public static ProjectReferenceItemGroupXElement AddProjectReference(this ProjectReferenceItemGroupXElement projectReferenceItemGroup, string projectFileRelativeProjectFilePath, out XElement projectReferenceXElement)
        {
            projectReferenceXElement = projectReferenceItemGroup.Value.AddElement(ProjectFileXmlElementNames.ProjectReference)
                                       .AddContents(new XAttribute(ProjectFileXmlAttributeNames.Include, projectFileRelativeProjectFilePath))
            ;

            return(projectReferenceItemGroup);
        }
コード例 #4
0
        public static ProjectReferenceItemGroupXElement AsProjectReferenceItemGroup(this XElement xElement)
        {
            var projectReferenceItemGroup = new ProjectReferenceItemGroupXElement(xElement);

            return(projectReferenceItemGroup);
        }
        public static ProjectReferenceItemGroupXElement AddProjectReference(this ProjectReferenceItemGroupXElement projectReferenceItemGroup, string projectFileRelativeProjectFilePath)
        {
            projectReferenceItemGroup.AddProjectReference(projectFileRelativeProjectFilePath, out var dummy);

            return(projectReferenceItemGroup);
        }