Windows 7 TFS 2010获取错误TF26173未能连接到应用层

Windows 7 TFS 2010获取错误TF26173未能连接到应用层,windows-7,tfs,Windows 7,Tfs,我们正在运行TFS 2010和VS 2010。在我的机器上,我不断得到“TF26173:Team Foundation无法连接到应用程序层” 我在Windows 7 x64上安装了VS2010、TeamCompanion 4.2和TFS Power Tools,它们可以连接到服务器。我找到了一个解决方法,关闭所有内容并清除“C:\Users\user\AppData\Local\Microsoft\Team Foundation\3.0\Cache”文件夹 这允许我再次连接,但在几次操作中,错误

我们正在运行TFS 2010和VS 2010。在我的机器上,我不断得到“TF26173:Team Foundation无法连接到应用程序层”

我在Windows 7 x64上安装了VS2010、TeamCompanion 4.2和TFS Power Tools,它们可以连接到服务器。我找到了一个解决方法,关闭所有内容并清除“C:\Users\user\AppData\Local\Microsoft\Team Foundation\3.0\Cache”文件夹

这允许我再次连接,但在几次操作中,错误再次发生。当机器处于错误状态时,我可以执行源代码管理操作,但我不能查看或更改工作项,也不能修改区域和迭代

服务器上的所有其他用户都没有问题,所以我认为这一定是客户机问题。我尝试在缓存文件中查询web服务url,所有的响应都是OK。我的机器与OK用户(所有内部用户)在同一网络上,因此不要认为这是网络问题

任何关于如何解决或解决问题的其他想法都将不胜感激

编辑:我找到了错误的完整堆栈跟踪

Microsoft.TeamFoundation.WorkItemTracking.Client.ConnectionException: TF26173: Team Foundation could not connect to the application tier. Check that you have a network connection and that the Team Foundation Server is available. If the problem persists, contact your Team Foundation Server administrator. ---> System.Net.WebException: The request failed with HTTP status 404: Not Found.
   at System.Web.Services.Protocols.SoapHttpClientProtocol.ReadResponse(SoapClientMessage message, WebResponse response, Stream responseStream, Boolean asyncCall)
   at System.Web.Services.Protocols.SoapHttpClientProtocol.Invoke(String methodName, Object[] parameters)
   at Microsoft.TeamFoundation.WorkItemTracking.Proxy.ClientServiceProxy.GetMetadataEx2(MetadataTableHaveEntry[] metadataHave, String& dbStamp, Boolean useMaster, Int32& locale, Int32& comparisonStyle, Int32& mode)
   at Microsoft.TeamFoundation.WorkItemTracking.Proxy.WorkItemServer.GetMetadataEx2(String requestId, Boolean useMaster, MetadataTableHaveEntry[] metadataHave, String& dbStamp, IMetadataRowSets& metadata, Int32& locale, Int32& comparisonStyle, Int32& displayMode)
   at CProdStudioBackendChannel.GetMetadata(CProdStudioBackendChannel* , tagVARIANT* pvarLocale, tagVARIANT* pvarComparisonStyle, PsUserDisplayModeEnum* pDisplayMode, Boolean* pfUseSIDSecurity, Int32 fNoFire, Int32 fByPassFireOnThis, WorkItemServer clientService)
   --- End of inner exception stack trace ---
   at Microsoft.TeamFoundation.WorkItemTracking.Client.DataStore.HandleComException(Int32 hr)
   at Microsoft.TeamFoundation.WorkItemTracking.Client.DataStore.DatastoreClass.ConnectEx(String connectionString, String defaultCachePath, String instanceId, String userSamName, String userFriendlyName, String userSid, WorkItemServer clientService)
   at Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore.InitializeInternal()
   at Microsoft.TeamFoundation.WorkItemTracking.Client.WorkItemStore.Microsoft.TeamFoundation.Client.ITfsTeamProjectCollectionObject.Initialize(TfsTeamProjectCollection teamProjectCollection)
   at Microsoft.TeamFoundation.Client.TfsTeamProjectCollection.InitializeTeamFoundationObject(String fullName, Object instance)
   at Microsoft.TeamFoundation.Client.TfsConnection.CreateServiceInstance(Assembly assembly, String fullName)
   at Microsoft.TeamFoundation.Client.TfsConnection.GetServiceInstance(Type serviceType, Object serviceInstance)
   at Microsoft.TeamFoundation.Client.TfsTeamProjectCollection.GetServiceInstance(Type serviceType, Object serviceInstance)
   at Microsoft.TeamFoundation.Client.TfsConnection.GetService(Type serviceType)
   at Attrice.TeamFoundation.Controllers.ServerWrapper.GetWorkItemStore()
   at Attrice.TeamFoundation.Controllers.TfsController..ctor(ServerWrapper server)
   at Attrice.TeamFoundation.Sidekicks.VisualStudio.TeamFoundationContext.ProjectContextChanged(Object sender, EventArgs e)
   at Microsoft.VisualStudio.TeamFoundation.TeamFoundationServerExt.OnActiveContextChanged(ActiveContextChangedEventArgs args)
编辑2:我已将此问题提交给Microsoft,因为似乎没有答案。你可以在

提前谢谢


Dave

当服务帐户过期/锁定时,我遇到了这个问题。我不确定是哪个服务帐户失败导致了错误,因为在我的例子中,它们都是同时轮换出来的(SQL、SQL分析和报告、SQL代理、Sharepoint、TFS、Project server等)

在我的例子中,这是在一个单服务器原型堆栈上进行的—YMMV带有服务器场安装,但原则上应该是相同的

在以下情况下,我们的26173错误被清除:

1) 重置所有服务帐户域密码

2) 在控制面板/服务中将受影响帐户(Team server、Sharepoint、SQL…等)的所有登录凭据更新为新密码

3) 循环/启动控制面板/服务中的所有服务

4) 启动TFS管理员,确认为应用层服务帐户设置了当前凭据

5) 启动IIS管理器

6) 在应用程序池下,重新启动停止的TFS和Sharepoint池

无论如何,这修复了我们的小故障-需要有一种可靠/直接的方法来管理整个服务器场的凭据,就像这样(开箱即用)。假设这是唯一受支持的方法,它就糟透了。希望有人能告诉我如何更好地定期在SharePoint/TFS/Project Server场中轮换使用的凭据

希望这对你的案子有帮助Dave-


--Tim

我通过Connect服务向Microsoft报告了这一情况(请参阅通话中的链接)

我们对Fiddler2进行了一些诊断,发现VS2010 SP1连接到TFS(非SP)很好,但是VS中的某些东西会尝试连接到TFS SP1中添加的web服务


Microsoft已确认这是VS中的一个问题,并在下一版本中进行了修复,但在近期内,将TFS 2010升级到SP1也解决了该问题。

Windows事件查看器中是否有任何内容?Dave,很遗憾,问题发生时,客户端或服务器事件日志中都没有任何内容感谢您的响应,你的回答不是我这个问题的原因(我已经添加了我发现的解决方案的简要摘要),但是可以帮助其他人。