private XDocument LoadGlobalListFromServerAsXmlDocument() { XDocument doc = null; Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore store = WorkItemTracking.WorkItemStoreFactory.GetWorkItemStore(requestUri, tfsCredentials); doc = XDocument.Parse(store.ExportGlobalLists().OuterXml); if (doc == null) { throw new ArgumentNullException("doc", "Unable to load any global list data from the server '" + requestUri + "'."); } return(doc); }
public void SaveChanges(bool createIfNotExists) { XDocument docFromServer = LoadGlobalListFromServerAsXmlDocument(); XDocument doc = XDocument.Parse(docFromServer.ToString()); var globalListElement = FindGlobalListElementIn(doc); globalListElement = CreateSingleGlobalListElement(createIfNotExists, doc, globalListElement); PopulateGlobalListElementWithItems(globalListElement); var newXmlDocument = new XmlDocument(); newXmlDocument.InnerXml = doc.ToString(); Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore store = WorkItemTracking.WorkItemStoreFactory.GetWorkItemStore(requestUri, tfsCredentials); store.ImportGlobalLists(newXmlDocument.DocumentElement); }
// Crappy // http://www.codeproject.com/Questions/499216/ReadingplusaplusdocumentplusfromplusTFSplusserverp public static void CrappyKeepTrack() { Uri uri = new Uri("http://corfoundation:8080/tfs/COR-DEV-Produktion/"); using (Microsoft.TeamFoundation.Client.TeamFoundationServer tfs = Microsoft.TeamFoundation.Client.TeamFoundationServerFactory.GetServer(uri)) { Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore wit = (Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore)tfs.GetService(typeof(Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore)); Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemCollection result = wit.Query("SELECT * FROM WorkItems"); foreach (Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItem wi in result) { foreach (Microsoft.TeamFoundation.WorkItemTracking.Client.Attachment attachment in wi.Attachments) { //do something Console.WriteLine(attachment.Name); } // Next attachment } // Next wi } // End Using tfs } // End Sub CrappyKeepTrack
internal static Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemLinkTypeEnd Map(Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore store, IWorkItemLinkTypeEnd end) { var linkType = store.WorkItemLinkTypes.Single(type => type.ReferenceName == end.LinkType.ReferenceName); return(end.IsForwardLink ? linkType.ForwardEnd : linkType.ReverseEnd); }