/// <summary> /// TFSs the vso API. /// </summary> /// <param name="tfs">The TFS.</param> private static void TfsVSOApi(ITfsTeamProjectCollection tfs) { tfs.EnsureAuthenticated(); bool first = true; var workitemstore = tfs.GetService <IWorkItemStore>(); //var linkTester = workitemstore.GetWorkItem(195); //var links = linkTester.Links; //var count = links.Count; //foreach (ILink link in links) //{ // Console.WriteLine("\t\t{0}\tComment: {1}", WriteSpecific(link), SafeWriteComment(link)); //} const string wiql = "SELECT * FROM WorkItems WHERE [System.TeamProject] = 'RestPlaypen' ORDER BY [System.Id] "; IWorkItemCollection wic = workitemstore.Query(wiql); foreach (IWorkItem wi in wic) { if (wi.Rev > 1) { Console.WriteLine("{0}:{1}\t{2}", wi.Id, wi.Rev, wi.Title); IRevisionCollection revisions = wi.Revisions; foreach (IRevision revision in revisions) { var value = (DateTime)revision.Fields["System.ChangedDate"].Value; Console.WriteLine("\t{0}\t{1}\t{2} {3}", revision.Index, revision.Fields.Count, value, value.Kind); bool dumpFields = false; if (dumpFields && first) { first = false; List <string> names = (from IField field in revision.Fields select field.ReferenceName).ToList(); names.Sort(); foreach (string name in names) { Console.WriteLine("\t\t{0}", name); } } } } if (wi.Links.Count > 0) { Console.WriteLine("{0}:{1}\t{2}", wi.Id, wi.Rev, wi.Title); Console.WriteLine("\t{0} Links", wi.Links.Count); foreach (ILink link in wi.Links) { Console.WriteLine("\t\t{0}\tComment: {1}", WriteSpecific(link), SafeWriteComment(link)); } } } }
public void Scan_WorkItems_UnitTest() { ITfsTeamProjectCollection tfs = new TfsTeamProjectCollectionImpl(new Uri(VSOClientManager.VsoCollection)); tfs.EnsureAuthenticated(); var workitemstore = tfs.GetService <IWorkItemStore>(); const string wiql = "SELECT * FROM WorkItems WHERE [System.TeamProject] = 'RestPlaypen' ORDER BY [System.Id] "; IWorkItemCollection wic = workitemstore.Query(wiql); bool first = true; foreach (IWorkItem wi in wic) { if (wi.Rev > 1) { //Console.WriteLine("{0}:{1}\t{2}", wi.Id, wi.Rev, wi.Title); IRevisionCollection revisions = wi.Revisions; foreach (IRevision revision in revisions) { var value = (DateTime)revision.Fields["System.ChangedDate"].Value; //Console.WriteLine("\t{0}\t{1}\t{2} {3}", revision.Index, revision.Fields.Count, value, value.Kind); bool dumpFields = true; if (dumpFields && first) { first = false; List <string> names = (from IField field in revision.Fields select field.ReferenceName).ToList(); names.Sort(); foreach (string name in names) { //Console.WriteLine("\t\t{0}", name); } } } } if (wi.Links.Count > 0) { //Console.WriteLine("{0}:{1}\t{2}", wi.Id, wi.Rev, wi.Title); //Console.WriteLine("\t{0} Links", wi.Links.Count); foreach (ILink link in wi.Links) { //Console.WriteLine("\t\t{0}\tComment: {1}", WriteSpecific(link), SafeWriteComment(link)); } } } }
partial void Revisions_SetCondition(ref IWorkItem instance, ref IRevisionCollection setValue);