【发布时间】:2014-11-10 15:50:50
【问题描述】:
我花了很多时间寻找如何使用 TFS Server 对象模型获取具有 TeamFoundation 12.0 (TFS 2013) 的 ApplicationServiceHost 的实例...这个类曾经在 Microsoft.TeamFoundation 中TeamFoundation 10.0 中的 .Framework.Server.dll。但我不知道如何使用 TeamFoundation 12.0 获得它。
我需要使用Server对象模型,因为我想访问TFS的Queued Jobs(使用Server Job Service的QueryJobQueue方法),这是Client端不可用的方法。
使用 TFS 2010 的服务器对象模型,可以执行以下操作:
var applicationHost = new ApplicationServiceHost(
Guid.Empty,
applicationDatabaseConnectionString,
"unused",
Path.Combine(toolPath, "Plugins"),
"/tfs",
true);
但我无法弄清楚如何使用服务器对象模型 12.0 具体做到这一点。根据 MSDN,我应该首先获得一个 TeamFoundationServiceHost(应用程序或集合)并使用它的属性 ApplicationServiceHost。但是我怎样才能以编程方式获得这样的 TeamFoundationServiceHost 呢?
一旦我能获得这样的实例,我将使用来自here 的 C# Server OM 代码示例从控制台应用程序访问作业服务。目的是在重新启动 TFS 服务器之前检查是否有任何备份作业正在运行,并让 Windows 的补丁有机会应用...
【问题讨论】: