我遇到了Microsoft.TeamFoundation.WorkItemTracking.WebApi.WorkItemTrackingHttpClient类的问题。 我无法在我的VSTS中更新工作项,因为该类在http补丁请求中发送空体。我做错了吗?
测试代码:
private readonly WorkItemTrackingHttpClient _workItemTrackingHttpClient;
public RestApi(string baseUrl, string pat)
{
var vssConnection = new VssConnection(new Uri(baseUrl), new VssBasicCredential(string.Empty, pat));
_workItemTrackingHttpClient = vssConnection.GetClient<WorkItemTrackingHttpClient>();
var document = new JsonPatchDocument();
document.Add(new JsonPatchOperation()
{
Operation = Operation.Add,
Path = "/fields/Microsoft.VSTS.Scheduling.Effort",
Value = 1
});
var workItem = _workItemTrackingHttpClient.UpdateWorkItemAsync(document, 233843).Result;
}
抛出: VssServiceException:您必须在请求正文中传递有效的补丁文档。
我使用Fiddler分析请求,发现正文是空的。奇怪的是它在二月份有效。
答案 0 :(得分:0)
我假设你使用的是Newtonsoft.Json 11.0.1,因为我在使用Newtonsoft.Json 11.0.1时遇到了这样的错误。我已在下面的网站上提交了反馈,并等待回复:
作为解决方法,请尝试使用Newtonsoft.Json 10.0.3。
答案 1 :(得分:0)
<强>更新强>
Newtonsoft.Json已更新至11.0.2。遇到上述问题后,我将软件包更新到最新版本,问题已解决。