public List <ProjectInfo> ListAllProjects() { SoapInvoker invoker = new SoapInvoker(this); invoker.CreateEnvelope("ListAllProjects"); var resultEl = invoker.InvokeResult(); return(new List <ProjectInfo>(resultEl.Elements(this.MessageNs + "ProjectInfo").Select(x => ProjectInfo.FromXml(Collection, x)))); }
private IEnumerable <XElement> GetXmlCollections() { SoapInvoker invoker = new SoapInvoker(this); //var serviceNs = var message = invoker.CreateEnvelope("QueryResourcesByType"); message.Add(new XElement(MessageNs + "resourceTypes", new XElement(MessageNs + "guid", projectCollectionsTypeId))); var resultElement = invoker.InvokeResult(); return(resultElement.XPathSelectElements("./msg:CatalogResources/msg:CatalogResource", this.NsResolver)); }
internal T LoadService <T>() where T : TFSCollectionService { SoapInvoker invoker = new SoapInvoker(this); invoker.CreateEnvelope("QueryServices"); var resultEl = invoker.InvokeResult(); T service = Activator.CreateInstance <T>(); var serviceEl = resultEl.XPathSelectElement(string.Format("./msg:ServiceDefinitions/msg:ServiceDefinition[@identifier='{0}']", service.ServiceResolver.Id), TeamFoundationServerServiceMessage.NsResolver); if (serviceEl == null) { throw new Exception("Service not found"); } service.Server = this.collection.Server; service.Collection = this.collection; service.RelativeUrl = serviceEl.Attribute("relativePath").Value; return(service); }