以编程方式检索TFS 2010中给定项目的已打开工作项列表
我试图以编程方式检索给定项目的已打开工作项列表。在网上搜索时,我能看到的唯一方法是使用WorkItemStore API并执行查询 我遇到的主要问题是检索workitemstore几乎需要2分钟。我随后将其缓存,但第一次命中是不可接受的。除此之外,我的应用程序需要每隔x分钟刷新一次,以防添加新的工作项 是否有任何方法可以在不使用WorkItemStore的情况下获取与项目关联的已打开工作项的列表。我只需要工作项编号和标题(可选)。我不需要任何其他信息 如果没有,是不是我做错了什么,或者TFS服务器索引丢失了什么,这可能导致性能如此缓慢。顺便说一句,我试过不同的方法。他们都非常慢以编程方式检索TFS 2010中给定项目的已打开工作项列表,tfs,Tfs,我试图以编程方式检索给定项目的已打开工作项列表。在网上搜索时,我能看到的唯一方法是使用WorkItemStore API并执行查询 我遇到的主要问题是检索workitemstore几乎需要2分钟。我随后将其缓存,但第一次命中是不可接受的。除此之外,我的应用程序需要每隔x分钟刷新一次,以防添加新的工作项 是否有任何方法可以在不使用WorkItemStore的情况下获取与项目关联的已打开工作项的列表。我只需要工作项编号和标题(可选)。我不需要任何其他信息 如果没有,是不是我做错了什么,或者TFS服务
WorkItemStore store = (WorkItemStore)tfs.GetService(typeof(WorkItemStore));
或
或
在此问题上的任何帮助都将不胜感激。即使有难以置信的大分贝,您也不应该经历两分钟的延迟 我将加载SQL Profiler并查看为获取工作项而生成的查询。从这里,您可能可以确定查询的哪一部分导致了延迟
您也可以考虑在TFS DBS的同一个框上运行查询,看看这是否是问题所在。正如上面的评论所指出的,远程连接肯定会导致延迟
如果所有这些都不能解决问题,那么希望您能提供更多信息,如项目的大小无关紧要,TFS安装配置服务器在哪里,它们是如何设置的,以及它在什么硬件上。即使数据库非常大,您也不应该经历两分钟的延迟 我将加载SQL Profiler并查看为获取工作项而生成的查询。从这里,您可能可以确定查询的哪一部分导致了延迟
您也可以考虑在TFS DBS的同一个框上运行查询,看看这是否是问题所在。正如上面的评论所指出的,远程连接肯定会导致延迟
如果所有这些都不能解决问题,那么希望您能提供更多信息,如项目的大小无关紧要,TFS安装配置您的服务器在哪里,它们是如何设置的,以及它在什么硬件上。TFS服务器在远程建筑中吗?我从未让WorkItemStore花费超过一两秒钟的时间。TFS服务器是否在远程建筑中?我从未让工作项目商店花费超过一两秒钟的时间。
workItemStore = new WorkItemStore(tfsTeamProjectCollection);
workItemStore = new WorkItemStore(tfsServerName);