最近的CheckIns TFS以编程方式进行

时间:2018-01-05 06:36:29

标签: c# sharepoint tfs

我是这个TFS的新手。我知道用于Recent CheckIn的API是Changeset API。我也知道关于Recent CheckIn的其他帖子,但是他们没有达到我想要的。由于TFS已禁用此Recent CheckIn webpart,因此我需要重建此webpart。所以在这种情况下,我需要使用Id,comment属性查询所有最近的签到,如下所示。

任何人都可以指导我吗?

感谢您的帮助

enter image description here

2 个答案:

答案 0 :(得分:0)

默认情况下,Changeset API的结果按ID按降序排序。并且有一个参数$top可返回您定义的最大结果数。

所以基本上,你只需要添加$top参数,这将返回你想要的最近签到。以下示例将返回最近的3个签到:

GET https://{instance}/DefaultCollection/_apis/tfvc/changesets?$top=3&api-version={version}

运行此api后,您将获得一个包含签入信息的JSON文件,然后,您需要将此json文件中的信息解析为表。

答案 1 :(得分:0)

(如果SharePoint webparts支持)您可以尝试使用net libs for rest api:https://docs.microsoft.com/en-us/vsts/integrate/get-started/client-libraries/samples

这是十大chekins的例子:

public IEnumerable<TfvcChangesetRef> ListChangesets() 
{ 
    VssConnection connection = this.Context.Connection; 
    TfvcHttpClient tfvcClient = connection.GetClient<TfvcHttpClient>(); 

    IEnumerable<TfvcChangesetRef> changesets = tfvcClient.GetChangesetsAsync(top: 10).Result; 

    foreach (TfvcChangesetRef changeset in changesets) 
    { 
        Console.WriteLine("{0} by {1}: {2}", changeset.ChangesetId, changeset.Author.DisplayName, changeset.Comment ?? "<no comment>"); 
    } 

    return changesets; 
} 

此处的完整示例:https://github.com/Microsoft/vsts-dotnet-samples/blob/master/ClientLibrary/Snippets/Microsoft.TeamServices.Samples.Client/Tfvc/ChangesetsSample.cs