使用c#获取Changeset及其在TFS上的所有更改

我试图通过它的变化获得特定的变更集。 这是工作。 问题是我无法获取受该变更集影响的文件。

Changeset changeset = GetChangeset(new Uri("tfs path"), 10918); foreach (var w in changeset.Changes) { Console.WriteLine("Type:" + w.ChangeType); Console.WriteLine("Comment:" + changeset.Comment); Console.WriteLine("Date:" + changeset.CreationDate); foreach (var y in changeset.WorkItems) { Console.WriteLine("Name:" + y.Title + y.Type); } } private static Changeset GetChangeset(Uri serveruri, int changesetid) { var tfs = new TfsTeamProjectCollection(serveruri); var svc = tfs.GetService(); var changeset = svc.GetChangeset(changesetid); return changeset; } 

上面的代码正在运行。 我可以将变更集作为对象获取并显示ChangeTypeCreationDateComment但我无法获得与更改相关联的项目。 例如,我编辑了Program.cs 。 所以它应该在变更集下可见。

任何建议都会很高兴。

谢谢!

您已经在迭代代码中的更改。 受影响的文件位于“ Change类型的“ Item属性中。

在你的情况下: w.Item.ServerItem – >这是文件的Serverpath,如'$/A/B/C.txt'

您可以使用w.Item.DownloadFile(@"C:\local.txt")下载它