.net - 如何以编程方式关闭 TFS 工作项

标签 .net vb.net tfs

我正在尝试将存储在 Excel 工作表中的遗留问题跟踪系统中的项目导入到 Team Foundation Server 中。我成功循环遍历 Excel 文件的行,并且可以创建新的工作项,但它们始终处于“建议”状态。如果我尝试将状态更改为“已关闭”,然后调用工作项的 Validate 方法,我会收到 State 属性上的验证错误 - InvalidListValue{4}。

    Dim MyProj As Project = store.Projects("MyProject")
    Dim WIT As WorkItemType = MyProj.WorkItemTypes("Task")
    Dim WorkItem As WorkItem = WIT.NewWorkItem()

    WorkItem.Title = Title
    WorkItem.Description = Description
    WorkItem.History = History
    WorkItem.State = "Closed"
    WorkItem.Fields("Assigned To").Value = AssignedTo
    WorkItem.Fields("Priority").Value = Priority
    WorkItem.Fields("Closed By").Value = ClosedBy

我还尝试了下面的代码,尝试保存工作项,将状态更改为关闭,然后再次保存,但这似乎也不起作用 - 当我在下打开它时,状态仍然是建议的我的工作项 TFS 查询:

        WorkItem.Save()

        WorkItem.State = "Closed"
        WorkItem.Fields("Closed By").Value = ClosedBy
        WorkItem.Save()

还有其他人尝试过这样的事情并成功吗,或者有这样做的想法吗?哦,这是我正在尝试创建和关闭的 CMMI 任务。我想知道我是否试图跳过 CMMI 要求的某些事件,但我对此很陌生,这只是一个猜测。

最佳答案

我弄清楚了如何以编程方式创建和关闭 TFS CMMI 任务。关键是要经过CMMI流程,可以在http://msdn.microsoft.com/en-us/library/bb668962.aspx找到。 ,更改 State 属性并在每次更改后保存 WorkItem。

        ... WorkItem creation tasks
        WorkItem.Fields("Assigned To").Value = AssignedTo
        WorkItem.Fields("Priority").Value = Priority

        'This first Save creates a WorkItem in the Proposed state'
        WorkItem.Save()

        WorkItem.State = "Active"
        Errors = WorkItem.Validate()
        WorkItem.Save()

        WorkItem.State = "Resolved"
        WorkItem.Fields("Resolved By").Value = ClosedBy
        WorkItem.Fields("Resolved Reason").Value = "Just because"
        Errors = WorkItem.Validate()
        WorkItem.Save()

        WorkItem.State = "Closed"
        WorkItem.Fields("Closed By").Value = ClosedBy
        Errors = WorkItem.Validate()
        WorkItem.Save()

关于.net - 如何以编程方式关闭 TFS 工作项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2850994/

相关文章:

.net - c# 全双工异步命名管道 .NET

c# - 保护网络服务?

mysql - vb.net INSERT CURDATE() 到 MySQL 问题

c# - 如何以编程方式调整 PropertyGrid 控件的水平分隔线?

c# - Microsoft Teams 中私有(private)消息的传入 Webhook

c# - FileInfo 变量中的图像大小

xml - 关于 VB NET 中 XML 摘要注释的问题

tfs - 无法在 Team Foundation Server 2010 中创建新项目

powershell - TFS Build和Powershell:如何访问预定义的构建变量

tfs - Azure Pipeline 运行时不会自动删除