`
huahuashijie888
  • 浏览: 33114 次
  • 性别: Icon_minigender_1
  • 来自: 成都
社区版块
存档分类
最新评论

TFS API 之一 项目连接与工作项查询、编辑

    博客分类:
  • TFS
阅读更多
准备工作:
添加Microsoft.TeamFoundation.*等4个库到引用

class Program
    {
        //本示例包含了如何访问项目列表,以及如何查询各项目的工作项,并且编辑工作项。
        static void Main(string[] args)
        {
            NetworkCredential cre = new NetworkCredential(user, password);//初始化用户
            TfsTeamProjectCollection tpc = new TfsTeamProjectCollection(
       new Uri("http://ip:8080/DefaultCollection"),cre);
            tpc.Authenticate();
            WorkItemStore workItemStore = (WorkItemStore)tpc.GetService(typeof(WorkItemStore));//GetService得到各种服务,包括工作项、版本控制等
//打印所有项目
            foreach (Project item in workItemStore.Projects)
            {
                Console.WriteLine(item.Name);
            }
//特有的Wilq查询,2008和2010还不一样
            WorkItemCollection queryResults = workItemStore.Query(
           "Select [System.Title]  From WorkItems Where [System.Teamproject]='工作管理'"+
           " and [System.WorkItemType] = '任务' and [System.State]='活动的' "+
           "Order By [System.State] Asc, [System.ChangedDate] Desc");
            WorkItem ad = queryResults[22];
            ad.Fields["指派给"].Value = "张绪伟";
            //验证工作项的各字段是否有效,如果save出错,则可通过此方式验证哪出错
            ArrayList ar = ad.Validate();           
           foreach (var item in ar)
            {
                Console.WriteLine(item.ToString());
            }
            ad.Save();
           //工作项的字段信息
            FieldCollection fl = ad.Fields;
            foreach (Field item in fl)
            {
                Console.WriteLine(item.Name);
            }
          
            Console.WriteLine(ad.Title);
            Console.WriteLine(queryResults.Count);
            Console.ReadKey();
        }
    }


花了一天时间才研究明白,如何通过tfs api 进行初始的项目连接,工作项查询等。后续工作是研究如何通过code进行版本控制等。
1
3
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics