【问题标题】:How to update a customized process template to access new features in multiple Team Projects in TFS 2015 RTM?如何更新自定义流程模板以访问 TFS 2015 RTM 中多个团队项目中的新功能?
【发布时间】:2015-10-07 06:25:40
【问题描述】:

我在 Microsoft 官方页面上阅读了这些链接更新自定义流程模板以访问新功能

当我尝试在调试中执行 Features4tfs.2015 时,我得到了这个异常 System.NotSupportedException: Specified method is not supported. at Microsoft.TeamFoundation.Integration.Server.CommonStructureService.Microsoft.Tea‌​‌​mFoundation.Framework.Server.ITeamFoundationService.ServiceStart(TeamFoundation‌​Re‌​questContext systemRequestContext)

关于这次通话

ProjectFeatureProvisioningService.GetFeatures(...)

有什么想法吗?

【问题讨论】:

  • 我的第一个问题是找到 dll Microsoft.TeamFoundation.Server.WebAccess.WorkItemTracking.Common.dll,它是在 jessehouwing 的帮助下解决的,请参阅下面的答案更多细节。

标签: c# vb.net tfs-process-template tfs-2015


【解决方案1】:

v14 好像就住在这里:

public class ProjectFeatureProvisioningService : ITeamFoundationService, IProjectFeatureProvisioning

Name: Microsoft.TeamFoundation.Server.WebAccess.WorkItemTracking.Common.ProjectFeatureProvisioningService 
Assembly: Microsoft.TeamFoundation.Server.WebAccess.WorkItemTracking.Common, Version=14.0.0.0 

Reflector 在这些情况下是您的朋友。只需将 TFS 服务器目录中的所有程序集加载到 Reflector 中,然后使用搜索功能:

然后在此处找到程序集“Microsoft.TeamFoundation.Server.WebAccess.WorkItemTracking.Common.dll”将是小菜一碟:

  • C:\Program Files\Microsoft Team Foundation Server 14.0\Application Tier\Web Services\bin
  • C:\Program Files\Microsoft Team Foundation Server 14.0\Application Tier\TFSJobAgent\Plugins

这些内部类可以在程序集之间移动而无需通知。这就是为什么它们是内部的;)。

全面披露:我收到了一份 Reflector Pro 的副本,以表彰我的博客和对该产品的热爱。还有其他产品,如 IlSpy、justDecompile 或 dotPeek,它们可能提供类似的功能。

【讨论】:

  • 谢谢,我终于在以下位置的 TFS 2015 服务器上找到了 dll“Microsoft.TeamFoundation.Server.WebAccess.WorkItemTracking.Common.dll”:C:\Program Files\Microsoft Team Foundation Server 14.0 \Application Tier\Web Services\bin C:\Program Files\Microsoft Team Foundation Server 14.0\Application Tier\TFSJobAgent\Plugins
  • 如果你让它工作,请在推特上通过@jessehouwing 联系我:)。
  • 我在这条线上使用 (TeamFoundationRequestContext requestContext = deploymentServiceHost.CreateSystemContext(true)) 得到了这个异常 Microsoft.TeamFoundation.Framework.Server.HostShutdownException
  • 我可以通过传递带有正确参数的/c: /w:/c: /d: 选项来克服该异常,但是它会在代码的后面几行崩溃。与:System.NotSupportedException: Specified method is not supported. at Microsoft.TeamFoundation.Integration.Server.CommonStructureService.Microsoft.TeamFoundation.Framework.Server.ITeamFoundationService.ServiceStart(TeamFoundationRequestContext systemRequestContext)
  • 但这要么是对这个问题的更新,要么是一个全新的问题,在这种情况下,请授予并关闭这个问题。
【解决方案2】:

这是微软提出的解决 TFS 2015 RTM 上 features4tfs 问题的解决方案:

插入这一行

deploymentHostProperties.PlugInDirectory = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles), @"Microsoft Team Foundation Server 14.0\Application Tier\TFSJobAgent\Plugins");

就在这一行之后(第 68 行)

TeamFoundationServiceHostProperties deploymentHostProperties = new TeamFoundationServiceHostProperties();

之后它可以在 TFS 2015 RTM 上完美运行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2016-10-19
    • 2016-02-13
    • 2011-03-01
    • 1970-01-01
    • 2016-09-03
    • 2011-07-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多