TFS二次开发系列:四、TFS二次开发WorkItem添加和修改、保存

  WorkItemStore:表示跟踪与运行 Team Foundation Server的服务器的工作项客户端连接。

A.添加工作项

  1.首先获得某服务器的WorkItemStore。

    WorkItemStore workstore = server.GetService<WorkItemStore>();

  2.然后通过对上面WorkItemStore获得Project项目。

    Project project = workstore.Projects["Calueng"];

  3.根据Project获得工作项类型WorkItemType,可以是Bug,任务等。

    WorkItemType itemtype = project.WorkItemTypes["Bug"];

  4.根据WorkItemType新建一个工作项WorkItem

    WorkItem bug = new WorkItem(itemtype);

B.修改工作项和保存工作项

  1.另外可以通过WorkItemStore获得指定ID的WorkItem进行修改

    WorkItem workitem = workstore.GetWorkItem(1);

  2.workitem.Fields["指派给"].Value = "*****";设置指派人是谁

        static void Main(string[] args)
        {
            Uri tfsUri = new Uri("http://pc-20130113jkun:8080/tfs");
            TfsTeamProjectCollection server = new TfsTeamProjectCollection(tfsUri);
            WorkItemStore workstore = server.GetService<WorkItemStore>();
            //取得Calueng这个团队项目
            Project project = workstore.Projects["Calueng"];
            //新建一个“bug”类型的工作项,也可以新建“任务”等
            WorkItemType itemtype = project.WorkItemTypes["Bug"];
            WorkItem bug = new WorkItem(itemtype);
            //制定bug工作项的标题、描述和状态等
            bug.Title = "第一个bug";
            bug.Description = "二次开发添加的第一个bug!";
            //设置bug的指派对象为zhangyuchun
            bug.Fields["指派给"].Value = "zhangyuchun";
            bug.State = "新建";
            bug.Save();
            Console.WriteLine("第一个bug已经保存成功!");

            //取得ID为1的工作项,在这里通过GetWorkItem方法取得
            WorkItem workitem = workstore.GetWorkItem(1);
            //取得原有指派人,修改ID为1工作项的指派对象
            string oldAssignedTo = (string)workitem.Fields["指派给"].Value;
            workitem.Fields["指派给"].Value = "laijingsi";
            //查看工作项是否有效,并且保存工作项
            if (workitem.IsValid())
            {
                workitem.Save();
                Console.WriteLine("原来指派的对象为:"+oldAssignedTo);
                Console.WriteLine("Work Item已经保存成功。");
            }

            Console.ReadLine();
        }

 

posted @ 2013-07-29 11:24  .NET架构  阅读(6448)  评论(2编辑  收藏  举报