我知道,通过使用https://www.visualstudio.com/en-us/中提到的TFS REST API在批处理调用中创建用户故事和一个子任务的条款DOCS/INTEMENTATE/API/WIT/样本。
,但我的要求是我已经有一个现有的用户故事,我想在C#中的现有用户故事下创建子任务。
有人知道如何做到这一点吗?
请参阅此示例代码:
var url= new Uri("https://XXX.visualstudio.com");
VssCredentials c = new VssCredentials(new Microsoft.VisualStudio.Services.Common.VssBasicCredential(string.Empty, "[personal access token]"));
var connection = new VssConnection(url, c);
var workitemClient = connection.GetClient<WorkItemTrackingHttpClient>();
string projectName = "scrum2015";
int parentWITId = 771;
var patchDocument = new Microsoft.VisualStudio.Services.WebApi.Patch.Json.JsonPatchDocument();
patchDocument.Add(new Microsoft.VisualStudio.Services.WebApi.Patch.Json.JsonPatchOperation() {
Operation=Operation.Add,
Path= "/fields/System.Title",
Value="childWIT"
});
patchDocument.Add(new Microsoft.VisualStudio.Services.WebApi.Patch.Json.JsonPatchOperation()
{
Operation = Operation.Add,
Path = "/relations/-",
Value = new
{
rel = "System.LinkTypes.Hierarchy-Reverse",
url = connection.Uri.AbsoluteUri+ projectName+ "/_apis/wit/workItems/"+parentWITId,
attributes = new
{
comment = "link parent WIT"
}
}
});
var createResult = workitemClient.CreateWorkItemAsync(patchDocument, projectName, "task").Result;
您可以使用此示例(只需将错误更改为任务(:https://www.visualstudio.com/en-us/docs/integrate/api/wit/wit/samples.create--错误
您还必须添加有关链接的信息:https://www.visualstudio.com/en-us/docs/integrate/api/wit/work-items#with-a-a-work-work-item-link在您的情况下:
patchdocument [4] = new {op =" add",path ="/restage/- ",value = new {rel =" system.linktypes.hierarchy-reverse",url =" https://accountName。visualstudio.com/_apis/wit/workitems/{userstory_id}}}};