public static IEnumerable <IProjectReference> GetProjectReferences(this ProjectReferencesItemGroupXElement projectReferencesItemGroupXElement) { var projectReferences = projectReferencesItemGroupXElement.GetProjectReferenceXElements() .Select(xElement => new ProjectReferenceXElement(xElement)); return(projectReferences); }
public static ProjectReferencesItemGroupXElement AddProjectReferencesItemGroupXElement(this ProjectXElement projectXElement) { var xItemGroupXElement = projectXElement.AddItemGroupXElement(); var projectReferencesItemGroupXElement = ProjectReferencesItemGroupXElement.New(xItemGroupXElement); return(projectReferencesItemGroupXElement); }
public static bool HasProjectReferencesItemGroupElement(this ProjectXElement projectXElement, out ProjectReferencesItemGroupXElement projectReferencesItemGroupXElement) { var hasItemGroupElement = projectXElement.HasItemGroupElementWithChildFirstOrDefault(ProjectFileXmlElementName.ProjectReference, out var itemGroupElement); projectReferencesItemGroupXElement = hasItemGroupElement ? ProjectReferencesItemGroupXElement.New(itemGroupElement) : default; return(hasItemGroupElement); }
public static bool HasProjectReference(this ProjectReferencesItemGroupXElement projectReferencesItemGroupXElement, string projectFilePath, out IProjectReference projectReference) { projectReference = projectReferencesItemGroupXElement.GetProjectReferenceXElementsWhereProjectFilePath(projectFilePath) .Select(xElement => ProjectReferenceXElement.From(xElement)) .SingleOrDefault(); var hasProjectReference = ProjectReferenceHelper.WasFound(projectReference); return(hasProjectReference); }
public static IProjectReference AddProjectReference(this ProjectReferencesItemGroupXElement projectReferencesItemGroupXElement, string projectFilePath) { var hasProjectReferenceAlready = projectReferencesItemGroupXElement.HasProjectReference(projectFilePath); if (hasProjectReferenceAlready) { throw new InvalidOperationException($"Project already has project reference:\n{projectFilePath}"); } var projectReference = ProjectReferenceXElement.New(projectReferencesItemGroupXElement, projectFilePath); return(projectReference); }
public static bool RemoveProjectReference(this ProjectReferencesItemGroupXElement projectReferencesItemGroupXElement, IProjectReference projectReference) { var xProjectReference = projectReferencesItemGroupXElement.GetProjectReferenceXElementsWhereProjectFilePath(projectReference.ProjectFilePath) .SingleOrDefault(); var wasFound = XElementHelper.WasFound(xProjectReference); if (wasFound) { xProjectReference.Remove(); } return(wasFound); }
public static bool HasProjectReference(this ProjectReferencesItemGroupXElement projectReferencesItemGroupXElement, string projectFilePath) { var hasProjectReference = projectReferencesItemGroupXElement.HasProjectReference(projectFilePath, out _); return(hasProjectReference); }
public static IEnumerable <XElement> GetProjectReferenceXElementsWhereProjectFilePath(this ProjectReferencesItemGroupXElement projectReferencesItemGroupXElement, string projectFilePath) { var xProjectReferences = projectReferencesItemGroupXElement.GetProjectReferenceXElements() .Where(xElement => xElement.Attribute(ProjectFileXmlElementName.Include).Value == projectFilePath); return(xProjectReferences); }
public static IEnumerable <XElement> GetProjectReferenceXElements(this ProjectReferencesItemGroupXElement projectReferencesItemGroupXElement) { var projectReferenceXElements = projectReferencesItemGroupXElement.Value.Elements(ProjectFileXmlElementName.ProjectReference); return(projectReferenceXElements); }
public static ProjectReferencesItemGroupXElement AsProjectReferencesItemGroup(this XElement xElement) { var projectReferenceItemGroup = new ProjectReferencesItemGroupXElement(xElement); return(projectReferenceItemGroup); }
public static ProjectReferenceXElement New(ProjectReferencesItemGroupXElement parent, string projectFilePath) { var projectReference = ProjectReferenceXElement.New(parent.Value, projectFilePath); return(projectReference); }
public static ProjectReferencesItemGroupXElement New(XElement xElement) { var projectReferencesItemGroupXElement = new ProjectReferencesItemGroupXElement(xElement); return(projectReferencesItemGroupXElement); }