从我的ASP.Net应用程序中,我希望使用本地TFS2015更新3的nuget TFS Client SDK (或REST API,如果可能)检索特定变更集的所有代码注释。我已经安装了C#包Microsoft.TeamFoundationServer.ExtendedClient.我知道如何获取变更集或特定文件-但我不知道如何加载注释。

在获得注释之后,我还喜欢更改(添加)对变更集(而不是文件)的注释。
谢谢你的帮助!
发布于 2016-07-29 11:31:49
这可以通过使用TFS Client SDK中的Microsoft.TeamFoundation.Discussion.Client来实现。以下是代码示例:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Microsoft.TeamFoundation.Client;
using Microsoft.TeamFoundation.Discussion.Client;
using Microsoft.TeamFoundation.VersionControl.Client;
namespace LightweightCodeView
{
class Program
{
static void Main(string[] args)
{
string projecturi = "https://xxx:8080/tfs/";
int changesetid = xxx;
TfsTeamProjectCollection ttpc = new TfsTeamProjectCollection(new Uri(projecturi));
VersionControlServer vcs = ttpc.GetService<VersionControlServer>();
Changeset cset = vcs.GetChangeset(changesetid);
TeamFoundationDiscussionService tfds = new TeamFoundationDiscussionService();
tfds.Initialize(ttpc);
IDiscussionManager idm = tfds.CreateDiscussionManager();
IAsyncResult iar = idm.BeginQueryByVersion(cset.ArtifactUri, QueryStoreOptions.ServerOnly, new AsyncCallback(Callback), null);
var threads = idm.EndQueryByVersion(iar);
foreach (DiscussionThread dt in threads)
{
Console.WriteLine(dt.RootComment.Content);
Console.WriteLine(dt.RootComment.Author.DisplayName);
Console.ReadLine();
}
//Update Changeset comments
cset.Comment = "New Comments";
cset.Update();
}
static void Callback(IAsyncResult result)
{
}
}
}https://stackoverflow.com/questions/38630123
复制相似问题