我正在玩TFS2015&可编程性。我已经在其中创建了一个集合和一些团队项目。此外,我已经创建了一些构建定义,但是当我尝试以编程方式访问它时,我得到一个异常,告诉我无法找到定义。
Uri teamCollectionUri = new Uri("http://tfs-playground:8080/tfs/MyCollection");
TfsTeamProjectCollection teamProjectCollection = new TfsTeamProjectCollection(teamCollectionUri);
teamProjectCollection.EnsureAuthenticated();
IBuildServer buildServer = (IBuildServer)teamProjectCollection.GetService(typeof(IBuildServer));
var definition = buildServer.GetBuildDefinition("FakeService", "Build fake service");
但是当我检查Web UI时,我在那里看到了构建定义。我在这里缺少什么?
编辑:
var builds = buildServer.QueryBuildDefinitions("FakeService")
不会返回任何构建定义吗?!?
答案 0 :(得分:0)
如果要将其用于XAML构建定义。您的代码是准确的,没有任何问题。根据您的例外情况,请确保您已添加所需的所有参考。
如果要使用它来获取VNext构建定义。正如Daveshaw所说,这是不受支持的。您需要使用 Rest API
https://{your-project}.visualstudio.com/defaultcollection/taeguk/_apis/build/definitions?api-ver
更新:对于新的vNext构建,现在不支持所有旧API。您只能使用的是Rest API。这是向Microsoft提交的功能请求。