TFS二次开发系列:五、工作项查询
本节将讲述如何查询工作项,用于二次开发中定义获取工作项列表。
使用WorkItemStore.Query方法进行查询工作项,其使用的语法和SQL语法类似:
Select [标题]
from workitems
where [工作项类型]='任务' and [指派给] = 'administrator'
order by [标题]
我们通过多个步骤来学习,一、我们连接TFS服务:
//TFSURI
Uri tfsUri = new Uri("http://pc-20130113jkun:8080/tfs");
TfsTeamProjectCollection projectCollection = new TfsTeamProjectCollection(tfsUri);
WorkItemStore workItemStore = (WorkItemStore)projectCollection.GetService(typeof(WorkItemStore));
二、基本查询
//基本查询
WorkItemCollection queryResults = workItemStore.Query(@"
Select [标题]
From WorkItems
Where [工作项类型] = 'Bug' ");
foreach (WorkItem item in queryResults)
{
Console.WriteLine(" 工作项名称:"+item.Title+" 工作项描述:"+item.Description);
}
三、多条件查询和排序
Console.WriteLine("--------------------------多条件查询和排序-------------------------");
//多条件查询和排序
WorkItemCollection itemcollection = workItemStore.Query(@"Select [标题] from workitems
where [工作项类型]='任务' and [指派给] = 'administrator' order by [标题] ");
foreach (WorkItem item in itemcollection)
{
Console.WriteLine(" 工作项名称:" + item.Title + " 工作项描述:" + item.Description);
}
四、查询结果数量
Console.WriteLine("--------------------------查询结果数量-------------------------");
//查询结果数量
string queryString = @" Select [标题] From WorkItems Where [工作项类型] = 'Bug'";
Query query = new Query(workItemStore,queryString);
int numWorkItems = query.RunCountQuery();
Console.WriteLine("工作项数量 " + numWorkItems + " user stories.");
五、异步查询
Console.WriteLine("--------------------------异步查询-------------------------");
//异步查询
ICancelableAsyncResult callback = query.BeginQuery();
callback.AsyncWaitHandle.WaitOne(, false);
WorkItemCollection result = query.EndQuery(callback);
foreach (WorkItem item in result)
{
Console.WriteLine(" 工作项名称:" + item.Title + " 工作项描述:" + item.Description);
}
所有本文的代码皆在下面。
//TFSURI
Uri tfsUri = new Uri("http://pc-20130113jkun:8080/tfs");
TfsTeamProjectCollection projectCollection = new TfsTeamProjectCollection(tfsUri);
WorkItemStore workItemStore = (WorkItemStore)projectCollection.GetService(typeof(WorkItemStore));
Console.WriteLine("--------------------------基本查询-------------------------");
//基本查询
WorkItemCollection queryResults = workItemStore.Query(@"
Select [标题]
From WorkItems
Where [工作项类型] = 'Bug' ");
foreach (WorkItem item in queryResults)
{
Console.WriteLine(" 工作项名称:"+item.Title+" 工作项描述:"+item.Description);
} Console.WriteLine("--------------------------多条件查询和排序-------------------------");
//多条件查询和排序
WorkItemCollection itemcollection = workItemStore.Query(@"Select [标题] from workitems
where [工作项类型]='任务' and [指派给] = 'administrator' order by [标题] ");
foreach (WorkItem item in itemcollection)
{
Console.WriteLine(" 工作项名称:" + item.Title + " 工作项描述:" + item.Description);
} Console.WriteLine("--------------------------查询结果数量-------------------------");
//查询结果数量
string queryString = @" Select [标题] From WorkItems Where [工作项类型] = 'Bug'";
Query query = new Query(workItemStore,queryString);
int numWorkItems = query.RunCountQuery();
Console.WriteLine("工作项数量 " + numWorkItems + " user stories."); Console.WriteLine("--------------------------异步查询-------------------------");
//异步查询
ICancelableAsyncResult callback = query.BeginQuery();
callback.AsyncWaitHandle.WaitOne(, false);
WorkItemCollection result = query.EndQuery(callback);
foreach (WorkItem item in result)
{
Console.WriteLine(" 工作项名称:" + item.Title + " 工作项描述:" + item.Description);
} Console.ReadLine();

TFS二次开发系列:五、工作项查询的更多相关文章
- TFS二次开发系列:七、TFS二次开发的数据统计以PBI、Bug、Sprint等为例(一)
在TFS二次开发中,我们可能会根据某一些情况对各个项目的PBI.BUG等工作项进行统计.在本文中将大略讲解如果进行这些数据统计. 一:连接TFS服务器,并且得到之后需要使用到的类方法. /// < ...
- TFS二次开发系列:三、TFS二次开发的第一个实例
首先我们需要认识TFS二次开发的两大获取服务对象的类. 他们分别为TfsConfigurationServer和TfsTeamProjectCollection,他们的不同点在于可以获取不同的TFS ...
- TFS二次开发系列索引
TFS二次开发11——标签(Label) TFS二次开发10——分组(Group)和成员(Member) TFS二次开发09——查看文件历史(QueryHistory) TFS二次开发08——分支(B ...
- TFS二次开发系列:二、TFS的安装
本系列的实例将采用TFS 2012+Sql Server2012编写. TFS的完整版本安装最好是在Windows server2008 64位以上版本中,其包括64位的SQL SERVER 2012 ...
- TFS二次开发系列:四、TFS二次开发WorkItem添加和修改、保存
WorkItemStore:表示跟踪与运行 Team Foundation Server的服务器的工作项客户端连接. A.添加工作项 1.首先获得某服务器的WorkItemStore. WorkIte ...
- TFS二次开发系列:一、TFS体系结构和概念
TFS是Team Fundation Server的简称,是微软VSTS的一部分,它是Microsoft应用程序生命周期管理(ALM)工具的核心协作平台,简单的说它是管理和开发软件项目的整个生命周期的 ...
- TFS二次开发系列:六、TFS的版本控制
在TFS中对于版本控制是在WorkSpace工作区来控制的. 首先我们先整理WorkSpace的一些基本使用方法. CheckIn:迁入挂起的操作 CreateMapping:创建一个本地映射地址 D ...
- TFS二次开发系列:八、TFS二次开发的数据统计以PBI、Bug、Sprint等为例(二)
上一篇文章我们编写了此例的DTO层,本文将数据访问层封装为逻辑层,提供给界面使用. 1.获取TFS Dto实例,并且可以获取项目集合,以及单独获取某个项目实体 public static TFSSer ...
- TFS二次开发、C#知识点、SQL知识总结目录
TFS二次开发系列 TFS二次开发系列:一.TFS体系结构和概念 TFS二次开发系列:二.TFS的安装 TFS二次开发系列:三.TFS二次开发的第一个实例 TFS二次开发系列:四.TFS二次开发Wor ...
随机推荐
- SharpPcap网络包捕获框架的使用--实例代码在vs2005调试通过
转自:http://hi.baidu.com/boyxgb/blog/item/89ac86fbdff5f82c4e4aea2e.html 由于项目的需要,要从终端与服务器的通讯数据中获取终端硬件状态 ...
- CSS继承的特殊性
p{color:red;} .first{color:green;} <p class="first">三年级时,我还是一个<span>胆小如鼠</s ...
- Ubuntu 14 設定 遠端連線,讓別台電腦可以連線進來
Ubuntu 14 需 disable 加密,方可 遠端連線 此台電腦 xxx@xxx-ThinkPad-T460p:~$ gsettings set org.gnome.Vino require-e ...
- 从A文件拿B文件的某一个值
- js-JavaScript高级程序设计学习笔记20
第二十三章 离线应用与客户端存储 1.离线检测 HTML5定义navigator.onLine属性.还定义了两个事件,online和offline,当网络从离线变为在线或从在线变为离线时在window ...
- COGS396. [网络流24题]魔术球问题(简化版
问题描述: 假设有n根柱子,现要按下述规则在这n根柱子中依次放入编号为 1,2,3,4......的球. (1)每次只能在某根柱子的最上面放球. (2)在同一根柱子中,任何2个相邻球的编号之和为完全平 ...
- Android Studio NDK初探
Android Studio中实现NDK开发较之前Eclipse+Cygwin,方便了很多. 本文以最简单的从C程序中获取字符串,并显示到MainActivity的TextView上为例进行NDK开发 ...
- Caused by: java.sql.BatchUpdateException: Transaction error, need to rollback. errno:1205 Lock wait timeout exceeded; try restarting transaction
更新的时候报 Caused by: java.sql.BatchUpdateException: Transaction error, need to rollback. errno:1205 Loc ...
- 【CityHunter】游戏流程设计及技术要点
目前CityHunter的核心玩法和主要的技术实现点已经全部到位,但是本人并未真正设计过整个游戏系统,所以只能循规蹈矩的先从最基本的流程图开始规划. 以上的流程是打开游戏直到控制台,接下来,是从控制台 ...
- javascript读取xml文件
什么是 XML? XML 指可扩展标记语言(EXtensible Markup Language) XML 是一种标记语言,很类似 HTML XML 的设计宗旨是传输数据,而非显示数据 XML 标签没 ...